Comment 13 for bug 1824407

Revision history for this message
Colin Ian King (colin-king) wrote :

4.15: ovl_get_origin_fh detects zero sized files on lower paths and treats these a special zero sized "copied up but origin unknown" magic.

[ 25.442916] ovl_check_origin: etc/.pwd.lock 2
[ 25.442918] ovl_get_origin_fh: 104 etc/.pwd.lock
[ 25.442919] ovl_get_origin_fh: 107 res=0
[ 25.442920] ovl_get_origin_fh: 117 res == 0, return NULL
[ 25.442921] ovl_get_origin: 179 fh = (null) 1
[ 25.442922] ovl_get_origin_fh: 104 etc/.pwd.lock
[ 25.442922] ovl_get_origin_fh: 107 res=0
[ 25.442923] ovl_get_origin_fh: 117 res == 0, return NULL
[ 25.442923] ovl_get_origin: 179 fh = (null) 1

5.3: the lower is / and hence is a directory hence the S_IFDIR origin return.

[ 33.320630] ovl_get_fh: 112 dentry: etc/.pwd.lock name: trusted.overlay.origin
[ 33.320632] ovl_get_fh: 115: res = 29
[ 33.320634] ovl_get_fh: 152: return fh = 000000006e71855c
[ 33.320634] ovl_check_origin: 413 fh = 000000006e71855c
[ 33.320635] ovl_check_origin_fh: 354 upperdentry = etc/.pwd.lock
[ 33.320635] ovl_decode_real_fh: 174
[ 33.320769] ovl_decode_real_fh: 211 return dentry (OK)
[ 33.320769] ovl_check_origin_fh: 360, i=0, origin = /
[ 33.320770] ovl_check_origin_fh: level=0 upper: etc/.pwd.lock 100600, lower: / 40755
[ 33.320770] ovl_check_origin_fh: 380 goto invalid
[ 33.320771] overlayfs: invalid origin (etc/.pwd.lock, ftype=8000, origin ftype=4000).
[ 33.320773] ovl_check_origin: 422 err = -5
[ 33.320774] ovl_check_origin: 429, return -5