Brian Behlendorf 7f89ae6ba0 Use local variable to read zp->z_mode
When accessing the zp->z_mode through the SA bulk interface we
expect that 64-bits are available to hold the result.  However,
on 32-bit platforms mode_t will only be 32-bits so we cannot
pass it to SA_ADD_BULK_ATTR().  Instead a local uint64_t variable
must be used and the result assigned to zp->z_mode.

This went unnoticed on 32-bit little endian platforms because
the bytes happen to end up in the correct 32-bits.  But on big
endian platforms like Sparc the zp->z_mode will always end up
set to zero.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Ned Bass <bass6@llnl.gov>
Signed-off-by: marku89 <mar42@kola.li>
Issue #1700
2014-01-09 15:50:11 -08:00
..
2013-12-18 16:46:35 -08:00
2014-01-09 15:50:11 -08:00
2013-11-05 12:23:11 -08:00
2013-12-16 09:15:57 -08:00
2013-11-21 11:13:53 -08:00
2013-09-04 15:49:00 -07:00
2013-09-04 15:49:00 -07:00
2013-12-18 16:46:35 -08:00