On Thu, 2012-03-15 at 23:58 +0530, Vivek Trivedi wrote: > NFS bdi flush thread in ps output is printed like "flush-<major number > in decimal>:<minor number in decimal>" > For example: > $ ps aux | grep flush > 2079 root 0 SW [flush-0:18] > ^^^^ > > nfs_bdi_register() > ==> bdi_register_dev() > ==> bdi_register(bdi, NULL, "%u:%u", MAJOR(dev), MINOR(dev)); > ^^^^^ > > However, NFS sb->s_id store major:minor number in hex: > > nfs_initialise_sb() > ==> snprintf(sb->s_id, sizeof(sb->s_id), > "%x:%x", MAJOR(sb->s_dev), MINOR(sb->s_dev)); > ^^^^^ > > If we enable nfs debug prints using command: > $ rpcdebug -m nfs -s all > > write to a file: > $ dd if=/dev/zero of=<NFS Mount>/testfile.txt bs=32768 count=1 > > Without Patch: > [ 2431.032000] NFS: 0 initiated write call (req 0:12/40, 32768 bytes > @ offset 0) ^^^^ > > With Patch: > [ 2431.032000] NFS: 0 initiated write call (req 0:18/40, 32768 bytes > @ offset 0) ^^^^ > > We should store NFS "s->s_id" in decimal to avoid confusion between NFS > flush thread name(in ps output) and NFS debug prints. Why do we care? The s_id is entirely filesystem-specific so it shouldn't be compared to the properties of VFS objects anyway. -- Trond Myklebust Linux NFS client maintainer NetApp Trond.Myklebust@xxxxxxxxxx www.netapp.com ��.n��������+%������w��{.n�����{��w���jg��������ݢj����G�������j:+v���w�m������w�������h�����٥