John Baldwin wrote: > On Thursday, April 30, 2015 02:56:25 PM Julian Elischer wrote: > > We really need to do something because the current system is really > > broken. > > And the fact that dirent has *32 bit* inode number in it was a > > shock.. I'd presumed > > that had gone the way of the dinosaurs and dodo. > > I think 11 needs to have a new dirent structure given out by a new > > syscall. > > (old one still present for compat reasons). Whether we need a > > readdir64() and friends > > I have not yet decided. Maybe it's time to bump libc's number again > > :-) > > This is the entire point of the ino64 branch (and project): to > rototill > struct stat and related structures so we have one ABI jump instead of > lots of separate ABI jumps. It bumps ino_t to 64 bits, dev_t to 32 > (IIRC), > adds d_off to dirent, etc. I believe the branch is able to do it all > with > symbol versioning rather than bumping libc. However, this is why > several of > us keep harping on this as the real long-term solution. :) > Yep. Btw, some of the stuff I did for the 64bit d_fileno patch I have isn't in projects/ino64 because they felt it could go in after the main patch. I haven't looked at how the new getdirentries() syscall + opendir() and friends actually need to change to use d_off/d_cookie yet, but will do so. (Btw, some like d_cookie since they feel it is more representative of what it is while others prefer d_off because that is what others used. I, personally, couldn't care less what it ends up being called.)
I will admit to having some concern w.r.t. progress on this. Last I heard Gleb Kurtsou didn't have time to work on it and he's the main author (from 2011, if I recall correctly). I agree we really need to figure out how to get this in FreeBSD11. rick ps: With a naming change of dirent->dirent64, my patch could go into head before projects/ino64, since all that happens is the the high order 32bits of d_fileno == 0 until projects/ino64 goes in. If others think it appropriate, I can do that. > -- > John Baldwin > _______________________________________________ > firstname.lastname@example.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to > "freebsd-current-unsubscr...@freebsd.org" > _______________________________________________ email@example.com mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"