Hi,
>> >Unfortunately thats not possible as the struct gfs2_sbd is actually
>> >changed lower down the call chain, but only in the lock_dlm module.
>>
>> +void gfs2_lm_unmount(struct gfs2_sbd *sdp)
>> +{
>> + if (likely(!test_bit(SDF_SHUTDOWN, &sdp->sd_flags)))
>> + gfs2_unmount_lockproto(&sdp->sd_lockstruct);
>> +}
>>
>> I can't follow... test_bit does not modify *sdp or sdp->sd_flags, and
>> gfs2_unmount_lockproto does not either.
>
>sd_lockstruct is part of the superblock and fields in the lockstruct are
>changed by (for example) fs/gfs2/locking/dlm/mount.c: gdlm_unmount() so
>I don't think its valid to mark the superblock const here (despite being
>a great fan of using const in general).
Ah I just looked, and saw that
struct {
struct ... sd_lockstruct;
} sdp;
sd_lockstruct is not a pointer but a struct in line. Yes, you are right.
It would have been valid only if sd_lockstruct was a pointer to non-const
memory.
Jan Engelhardt
--
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]