Date: Thu, 23 Jun 2011 09:43:33 +0300 From: Gleb Kurtsou <gleb.kurtsou@gmail.com> To: Garance A Drosehn <gad@FreeBSD.org> Cc: freebsd-fs@FreeBSD.org, Matthew Fleming <mdf@FreeBSD.org> Subject: Re: [rfc] 64-bit inode numbers Message-ID: <20110623064333.GA2823@tops> In-Reply-To: <4E027897.8080700@FreeBSD.org> References: <20101201091203.GA3933@tops> <20110104175558.GR3140@deviant.kiev.zoral.com.ua> <20110120124108.GA32866@tops.skynet.lt> <4E027897.8080700@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On (22/06/2011 19:19), Garance A Drosehn wrote: > On 1/20/11 7:41 AM, Gleb Kurtsou wrote: > > I've updated the patch. New version is available here: > > https://github.com/downloads/glk/freebsd-ino64/freebsd-ino64-patch-2011-01-20.tgz > > > > Changelog: > > * Add fts, ftw, nftw compat shims in libc > > * Place libc compat shims in separate files, don't hack original > > implementations. > > * Fix dump/restore > > * Use ino_t in UFS code (suggested by Kirk McKusick) > > * Keep ufs_ino_t (32 bit) for boot2 not to increase size > > > Sorry for replying to an older message, but a reply made in a different > thread reminded me about this project... > > Also, I may have asked this before. In fact, I'm almost sure that I started > a reply to this back in Jan/Feb, but my email client claims I never replied > to this topic... > > Are you increasing only the size of ino_t, or could you also look at > increasing the size of dev_t? (just curious...) Sure. Incorporating as much of similar changes as possible is good. I've added Kostik and Matthew to CC list, it's for them to decide. dev_t on other OSes: NetBSD - uint64_t DragonFly - uint32_t Darwin - __int32_t OpenSolaris - ulong_t Linux - __u32 Considering this I think 3rd party software is not ready for such change. Major/minor mapping to dev_t will get more complicated. And the most important question: what would you want it for? As far as I can see major/minor numbers are ignored nowadays, major is zero, minor increases independently of device type: crw-r--r-- 1 root wheel 0, 31 Jun 23 09:00 acpi crw-r----- 1 root operator 0, 74 Jun 23 09:00 ada0 crw-r----- 1 root operator 0, 75 Jun 23 09:00 ada0s1 crw-r----- 1 root operator 0, 76 Jun 23 09:00 ada0s2 crw-r----- 1 root operator 0, 77 Jun 23 09:00 ada0s3 crw-r----- 1 root operator 0, 81 Jun 23 09:00 ada0s3a crw-r----- 1 root operator 0, 82 Jun 23 09:00 ada0s3b crw-r----- 1 root operator 0, 83 Jun 23 09:00 ada0s3d crw-r----- 1 root operator 0, 78 Jun 23 09:00 ada0s4 crw------- 1 root operator 0, 30 Jun 23 09:00 ata crw------- 1 root wheel 0, 34 Jun 23 09:00 atkbd0 crw------- 1 root wheel 0, 25 Jun 23 09:01 bpf lrwxr-xr-x 1 root wheel 3 Jun 23 09:00 bpf0 -> bpf crw-rw-rw- 1 root wheel 0, 37 Jun 23 09:00 bpsm0 crw-r----- 1 root operator 0, 73 Jun 23 09:00 cd0 crw------- 1 root wheel 0, 6 Jun 23 09:01 console crw------- 1 root wheel 0, 54 Jun 23 09:00 consolectl crw-rw-rw- 1 root wheel 0, 17 Jun 23 09:00 ctty crw------- 1 root wheel 0, 5 Jun 23 09:00 devctl cr-------- 1 root wheel 0, 70 Jun 23 09:00 devstat crw-rw-rw- 1 root wheel 0, 112 Jun 23 09:01 dsp0.0 crw-rw-rw- 1 root wheel 0, 111 Jun 23 09:01 dsp1.0 crw-rw-rw- 1 root wheel 0, 110 Jun 23 09:01 dsp2.0 crw-rw-rw- 1 root wheel 0, 109 Jun 23 09:01 dsp3.0 crw-rw-rw- 1 root wheel 0, 108 Jun 23 09:01 dsp4.0 lrwxr-xr-x 1 root wheel 15 Jun 23 09:01 dumpdev -> /dev/label/swap dr-xr-xr-x 2 root wheel 512 Jun 23 09:00 ext2fs dr-xr-xr-x 2 root wheel 512 Jun 23 09:00 fd crw------- 1 root wheel 0, 19 Jun 23 09:00 fido crw-r----- 1 root operator 0, 3 Jun 23 09:00 geom.ctl crw------- 1 root wheel 0, 16 Jun 23 09:00 io lrwxr-xr-x 1 root wheel 6 Jun 23 09:00 kbd0 -> atkbd0 crw------- 1 root wheel 0, 7 Jun 23 09:00 klog crw-r----- 1 root kmem 0, 21 Jun 23 09:00 kmem dr-xr-xr-x 2 root wheel 512 Jun 23 09:00 label lrwxr-xr-x 1 root wheel 12 Jun 23 09:01 log -> /var/run/log crw------- 1 root wheel 0, 63 Jun 23 09:00 mdctl crw-r----- 1 root kmem 0, 20 Jun 23 09:00 mem crw-rw-rw- 1 root wheel 0, 14 Jun 23 09:00 midistat crw-rw-rw- 1 root wheel 0, 58 Jun 23 09:00 mixer0 crw-rw-rw- 1 root wheel 0, 59 Jun 23 09:00 mixer1 crw-rw-rw- 1 root wheel 0, 60 Jun 23 09:00 mixer2 crw-rw-rw- 1 root wheel 0, 61 Jun 23 09:00 mixer3 crw-rw-rw- 1 root wheel 0, 62 Jun 23 09:00 mixer4 crw------- 1 root kmem 0, 18 Jun 23 09:00 nfslock dr-xr-xr-x 2 root wheel 512 Jun 23 09:00 ntfs crw-rw-rw- 1 root wheel 0, 22 Jun 23 09:33 null crw-rw-rw- 1 root wheel 0, 32 Jun 23 09:00 nvidia0 crw-rw-rw- 1 root wheel 0, 33 Jun 23 09:00 nvidiactl crw------- 1 root operator 0, 71 Jun 23 09:00 pass0 crw------- 1 root operator 0, 72 Jun 23 09:00 pass1 crw-r--r-- 1 root wheel 0, 24 Jun 23 09:00 pci crw------- 1 root wheel 0, 103 Jun 23 09:01 pf crw-rw-rw- 1 root wheel 0, 36 Jun 23 09:00 psm0 crw-rw-rw- 1 root wheel 0, 27 Jun 23 09:00 ptmx dr-xr-xr-x 2 root wheel 512 Jun 23 09:11 pts crw-rw-rw- 1 root wheel 0, 28 Jun 23 09:01 random cr--r--r-- 1 root wheel 0, 4 Jun 23 09:00 sndstat lrwxr-xr-x 1 root wheel 4 Jun 23 09:00 stderr -> fd/2 lrwxr-xr-x 1 root wheel 4 Jun 23 09:00 stdin -> fd/0 lrwxr-xr-x 1 root wheel 4 Jun 23 09:00 stdout -> fd/1 crw------- 1 root wheel 0, 15 Jun 23 09:00 sysmouse crw------- 1 root wheel 0, 38 Jun 23 09:01 ttyv0 crw------- 1 root wheel 0, 39 Jun 23 09:01 ttyv1 crw------- 1 root wheel 0, 40 Jun 23 09:01 ttyv2 crw------- 1 root wheel 0, 41 Jun 23 09:01 ttyv3 crw------- 1 root wheel 0, 42 Jun 23 09:01 ttyv4 crw------- 1 root wheel 0, 43 Jun 23 09:01 ttyv5 crw------- 1 root wheel 0, 44 Jun 23 09:01 ttyv6 crw------- 1 root wheel 0, 45 Jun 23 09:01 ttyv7 crw------- 1 root wheel 0, 46 Jun 23 09:00 ttyv8 crw------- 1 root wheel 0, 47 Jun 23 09:00 ttyv9 crw------- 1 root wheel 0, 48 Jun 23 09:00 ttyva crw------- 1 root wheel 0, 49 Jun 23 09:00 ttyvb crw------- 1 root wheel 0, 50 Jun 23 09:00 ttyvc crw------- 1 root wheel 0, 51 Jun 23 09:00 ttyvd crw------- 1 root wheel 0, 52 Jun 23 09:00 ttyve crw------- 1 root wheel 0, 53 Jun 23 09:00 ttyvf dr-xr-xr-x 2 root wheel 512 Jun 23 09:00 ufs lrwxr-xr-x 1 root wheel 9 Jun 23 09:00 ugen0.1 -> usb/0.1.0 lrwxr-xr-x 1 root wheel 9 Jun 23 09:00 ugen0.2 -> usb/0.2.0 lrwxr-xr-x 1 root wheel 9 Jun 23 09:00 ugen1.1 -> usb/1.1.0 lrwxr-xr-x 1 root wheel 9 Jun 23 09:00 ugen1.2 -> usb/1.2.0 lrwxr-xr-x 1 root wheel 9 Jun 23 09:00 ugen1.3 -> usb/1.3.0 crw-r--r-- 1 root operator 0, 98 Jun 23 09:00 ums0 lrwxr-xr-x 1 root wheel 6 Jun 23 09:00 urandom -> random dr-xr-xr-x 2 root wheel 512 Jun 23 09:00 usb crw-r--r-- 1 root operator 0, 56 Jun 23 09:00 usbctl crw------- 1 root wheel 0, 85 Jun 23 09:01 vboxnetctl crw------- 1 root operator 0, 57 Jun 23 09:00 xpt0 crw-rw-rw- 1 root wheel 0, 23 Jun 23 09:00 zero crw-rw-rw- 1 root operator 0, 55 Jun 23 09:00 zfs Thanks, Gleb.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110623064333.GA2823>