Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Mar 2014 00:23:19 +0100
From:      Mariusz Zaborski <oshogbo@FreeBSD.org>
To:        freebsd-current@freebsd.org, freebsd-arch@freebsd.org
Cc:        jilles@freebsd.org
Subject:   Hello fdclose
Message-ID:  <CAGOYWV80vTTQbvSjvNa6XBzBiKy%2BjnGantkUH_RO=8prxoHmyQ@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
--20cf3042705a7d7ed004f4d5b4f2
Content-Type: text/plain; charset=ISO-8859-1

Hi,

After our previous discuss  [1] I prepare fdclosedir(3) function which
was committed by Pawel (cc'ed) in commit r254499.

A while ago I also prepare the fdclose function. Unfortunately, this
new function is a little bit more tricky then previous one. Can I ask
you for a review of this patch?

Thanks,
Mariusz

[1] http://lists.freebsd.org/pipermail/freebsd-arch/2013-August/014688.html

--20cf3042705a7d7ed004f4d5b4f2
Content-Type: text/x-patch; charset=US-ASCII; name="fdclose.patch"
Content-Disposition: attachment; filename="fdclose.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_hswdobnv0

LS0tIC8vZGVwb3QvdXNlci9vc2hvZ2JvL2NhcHNpY3VtL2luY2x1ZGUvc3RkaW8uaAkyMDEzLTA2
LTI4IDA4OjUxOjI4LjAwMDAwMDAwMCAwMDAwCisrKyAvaG9tZS9vc2hvZ2JvL3A0L2NhcHNpY3Vt
L2luY2x1ZGUvc3RkaW8uaAkyMDEzLTA2LTI4IDA4OjUxOjI4LjAwMDAwMDAwMCAwMDAwCkBAIC0z
OTYsNiArMzk2LDcgQEAKIGludAkgYXNwcmludGYoY2hhciAqKiwgY29uc3QgY2hhciAqLCAuLi4p
IF9fcHJpbnRmbGlrZSgyLCAzKTsKIGNoYXIJKmN0ZXJtaWRfcihjaGFyICopOwogdm9pZAkgZmNs
b3NlYWxsKHZvaWQpOworaW50CSBmZGNsb3NlKEZJTEUgKik7CiBjaGFyCSpmZ2V0bG4oRklMRSAq
LCBzaXplX3QgKik7CiBjb25zdCBjaGFyICpmbXRjaGVjayhjb25zdCBjaGFyICosIGNvbnN0IGNo
YXIgKikgX19mb3JtYXRfYXJnKDIpOwogaW50CSBmcHVyZ2UoRklMRSAqKTsKLS0tIC8vZGVwb3Qv
dXNlci9vc2hvZ2JvL2NhcHNpY3VtL2xpYi9saWJjL3N0ZGlvL1N5bWJvbC5tYXAJMjAxMy0wNi0y
OCAwODo1MToyOC4wMDAwMDAwMDAgMDAwMAorKysgL2hvbWUvb3Nob2diby9wNC9jYXBzaWN1bS9s
aWIvbGliYy9zdGRpby9TeW1ib2wubWFwCTIwMTMtMDYtMjggMDg6NTE6MjguMDAwMDAwMDAwIDAw
MDAKQEAgLTE1Niw2ICsxNTYsNyBAQAogCXB1dHdjX2w7CiAJcHV0d2NoYXJfbDsKIAlmbWVtb3Bl
bjsKKwlmZGNsb3NlOwogCW9wZW5fbWVtc3RyZWFtOwogCW9wZW5fd21lbXN0cmVhbTsKIH07Ci0t
LSAvL2RlcG90L3VzZXIvb3Nob2diby9jYXBzaWN1bS9saWIvbGliYy9zdGRpby9mY2xvc2UuMwky
MDEzLTA2LTI4IDA4OjUxOjI4LjAwMDAwMDAwMCAwMDAwCisrKyAvaG9tZS9vc2hvZ2JvL3A0L2Nh
cHNpY3VtL2xpYi9saWJjL3N0ZGlvL2ZjbG9zZS4zCTIwMTMtMDYtMjggMDg6NTE6MjguMDAwMDAw
MDAwIDAwMDAKQEAgLTEsNSArMSw2IEBACi0uXCIgQ29weXJpZ2h0IChjKSAxOTkwLCAxOTkxLCAx
OTkzCi0uXCIJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisuXCIgQ29weXJpZ2h0IChjKSAxOTkwLCAxOTkxLCAxOTkzIFRo
ZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCisuXCIgQ29weXJpZ2h0
IChjKSAyMDE0IE1hcml1c3ogWmFib3Jza2kgPG9zaG9nYm9ARnJlZUJTRC5vcmc+CisuXCIgQWxs
IHJpZ2h0cyByZXNlcnZlZC4KIC5cIgogLlwiIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29m
dHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKIC5cIiBDaHJpcyBUb3JlayBhbmQgdGhl
IEFtZXJpY2FuIE5hdGlvbmFsIFN0YW5kYXJkcyBDb21taXR0ZWUgWDMsCkBAIC0zMiwxMSArMzMs
MTIgQEAKIC5cIiAgICAgQCgjKWZjbG9zZS4zCTguMSAoQmVya2VsZXkpIDYvNC85MwogLlwiICRG
cmVlQlNEOiBoZWFkL2xpYi9saWJjL3N0ZGlvL2ZjbG9zZS4zIDE2NTkwMyAyMDA3LTAxLTA5IDAw
OjI4OjE2WiBpbXAgJAogLlwiCi0uRGQgQXByaWwgMjIsIDIwMDYKKy5EZCBNYXJjaCAxNywgMjAx
NAogLkR0IEZDTE9TRSAzCiAuT3MKIC5TaCBOQU1FCiAuTm0gZmNsb3NlICwKKy5ObSBmZGNsb3Nl
ICwKIC5ObSBmY2xvc2VhbGwKIC5OZCBjbG9zZSBhIHN0cmVhbQogLlNoIExJQlJBUlkKQEAgLTQ1
LDYgKzQ3LDggQEAKIC5JbiBzdGRpby5oCiAuRnQgaW50CiAuRm4gZmNsb3NlICJGSUxFICpzdHJl
YW0iCisuRnQgaW50CisuRm4gZmRjbG9zZSAiRklMRSAqc3RyZWFtIgogLkZ0IHZvaWQKIC5GbiBm
Y2xvc2VhbGwgdm9pZAogLlNoIERFU0NSSVBUSU9OCkBAIC01OSwyMiArNjMsNjQgQEAKIC5YciBm
Zmx1c2ggMyAuCiAuUHAKIFRoZQorLkZuIGZkY2xvc2UKK2Z1bmN0aW9uIGlzIGVxdWl2YWxlbnQg
dG8gdGhlCisuRm4gZmNsb3NlCitmdW5jdGlvbiBleGNlcHQgdGhhdCB0aGlzIGZ1bmN0aW9uIHJl
dHVybnMgZmlsZSBkZXNjcmlwdG9yIGluc3RlYWQgb2YKK2Nsb3NpbmcgaXQuCisuUHAKK1RoZQog
LkZuIGZjbG9zZWFsbAogZnVuY3Rpb24gY2FsbHMKIC5GbiBmY2xvc2UKIG9uIGFsbCBvcGVuIHN0
cmVhbXMuCiAuU2ggUkVUVVJOIFZBTFVFUwotVXBvbiBzdWNjZXNzZnVsIGNvbXBsZXRpb24gMCBp
cyByZXR1cm5lZC4KK1RoZQorLkZuIGZjbG9zZWFsbAorZnVuY3Rpb24gcmV0dXJuIG5vIHZhbHVl
LgorLlBwCitVcG9uIHN1Y2Nlc3NmdWwgY29tcGxldGlvbgorLkZuIGZjbG9zZQorcmV0dXJuIDAu
CitPdGhlcndpc2UsCisuRHYgRU9GCitpcyByZXR1cm5lZCBhbmQgdGhlIGdsb2JhbCB2YXJpYWJs
ZQorLlZhIGVycm5vCitpcyBzZXQgdG8gaW5kaWNhdGUgdGhlIGVycm9yLgorLlBwCitUaGUKKy5G
biBmZGNsb3NlCitmdW5jdGlvbiByZXR1cm4gdGhlIGZpbGUgZGVzY3JpcHRvciBpZiBzdWNjZXNz
ZnVsbC4KIE90aGVyd2lzZSwKIC5EdiBFT0YKIGlzIHJldHVybmVkIGFuZCB0aGUgZ2xvYmFsIHZh
cmlhYmxlCiAuVmEgZXJybm8KIGlzIHNldCB0byBpbmRpY2F0ZSB0aGUgZXJyb3IuCisuUHAKIElu
IGVpdGhlciBjYXNlIG5vIGZ1cnRoZXIgYWNjZXNzIHRvIHRoZSBzdHJlYW0gaXMgcG9zc2libGUu
CiAuU2ggRVJST1JTCisuQmwgLXRhZyAtd2lkdGggRXIKKy5JdCBCcSBFciBFT1BOT1RTVVBQCiBU
aGUKKy5GYSBfY2xvc2UKK21ldGhvZCBpbgorLkZhIHN0cmVhbQorYXJndW1lbnQgdG8KKy5GbiBm
ZGNsb3NlICwKK3dhcyBub3QgZGVmYXVsdC4KKy5JdCBCcSBFciBFQkFERgorVGhlCisuRmEgc3Ry
ZWFtCithcmd1bWVudCB0bworLkZuIGZkY2xvc2UgLAorZG9lcyBub3QgY29udGFpbnMgdmFsaWQg
ZmlsZSBkZXNjcmlwdG9yLgorLkVsCisuUHAKK1RoZQogLkZuIGZjbG9zZQotZnVuY3Rpb24KK2Fu
ZAorLkZuIGZkY2xvc2UKK2Z1bmN0aW9ucwogbWF5IGFsc28gZmFpbCBhbmQgc2V0CiAuVmEgZXJy
bm8KIGZvciBhbnkgb2YgdGhlIGVycm9ycyBzcGVjaWZpZWQgZm9yIHRoZSByb3V0aW5lcwpAQCAt
ODQsNyArMTMwLDkgQEAKIC5TaCBOT1RFUwogVGhlCiAuRm4gZmNsb3NlCi1mdW5jdGlvbgorYW5k
CisuRm4gZmRjbG9zZQorZnVuY3Rpb25zCiBkb2VzIG5vdCBoYW5kbGUgTlVMTCBhcmd1bWVudHM7
IHRoZXkgd2lsbCByZXN1bHQgaW4gYSBzZWdtZW50YXRpb24KIHZpb2xhdGlvbi4KIFRoaXMgaXMg
aW50ZW50aW9uYWwgLSBpdCBtYWtlcyBpdCBlYXNpZXIgdG8gbWFrZSBzdXJlIHByb2dyYW1zIHdy
aXR0ZW4KQEAgLTEwNCw4ICsxNTIsMTMgQEAKIGZ1bmN0aW9uCiBjb25mb3JtcyB0bwogLlN0IC1p
c29DIC4KLS5QcAorLlNoIEhpc3RvcnkKIFRoZQogLkZuIGZjbG9zZWFsbAogZnVuY3Rpb24gZmly
c3QgYXBwZWFyZWQgaW4KIC5GeCA3LjAgLgorLlBwCitUaGUKKy5GbiBmZGNsb3NlCitmdW5jdGlv
biBmaXJzdCBhcHBlYXJlZCBpbgorLkZ4IDExLjAgLgotLS0gLy9kZXBvdC91c2VyL29zaG9nYm8v
Y2Fwc2ljdW0vbGliL2xpYmMvc3RkaW8vZmNsb3NlLmMJMjAxMy0wNi0yOCAwODo1MToyOC4wMDAw
MDAwMDAgMDAwMAorKysgL2hvbWUvb3Nob2diby9wNC9jYXBzaWN1bS9saWIvbGliYy9zdGRpby9m
Y2xvc2UuYwkyMDEzLTA2LTI4IDA4OjUxOjI4LjAwMDAwMDAwMCAwMDAwCkBAIC0xLDYgKzEsNyBA
QAogLyotCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKLSAqCVRoZSBSZWdlbnRzIG9mIHRo
ZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29w
eXJpZ2h0IChjKSAxOTkwLCAxOTkzIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENh
bGlmb3JuaWEuCisgKiBDb3B5cmlnaHQgKGMpIDIwMTQgTWFyaXVzeiBaYWJvcnNraSA8b3Nob2di
b0BGcmVlQlNELm9yZz4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogVGhpcyBjb2Rl
IGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQogICog
Q2hyaXMgVG9yZWsuCkBAIC0zOCw2ICszOSw3IEBACiAKICNpbmNsdWRlICJuYW1lc3BhY2UuaCIK
ICNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN0ZGJvb2wuaD4KICNpbmNsdWRlIDxzdGRp
by5oPgogI2luY2x1ZGUgPHN0ZGxpYi5oPgogI2luY2x1ZGUgInVuLW5hbWVzcGFjZS5oIgpAQCAt
NDUsMTkgKzQ3LDE3IEBACiAjaW5jbHVkZSAibGliY19wcml2YXRlLmgiCiAjaW5jbHVkZSAibG9j
YWwuaCIKIAotaW50Ci1mY2xvc2UoRklMRSAqZnApCitzdGF0aWMgaW50CitjbGVhbmZpbGUoRklM
RSAqZnAsIGJvb2wgYykKIHsKIAlpbnQgcjsKIAotCWlmIChmcC0+X2ZsYWdzID09IDApIHsJLyog
bm90IG9wZW4hICovCi0JCWVycm5vID0gRUJBREY7Ci0JCXJldHVybiAoRU9GKTsKKwlyID0gZnAt
Pl9mbGFncyAmIF9fU1dSID8gX19zZmx1c2goZnApIDogMDsKKwlpZiAoYykgeworCQlpZiAoZnAt
Pl9jbG9zZSAhPSBOVUxMICYmICgqZnAtPl9jbG9zZSkoZnAtPl9jb29raWUpIDwgMCkKKwkJCXIg
PSBFT0Y7CiAJfQotCUZMT0NLRklMRShmcCk7Ci0JciA9IGZwLT5fZmxhZ3MgJiBfX1NXUiA/IF9f
c2ZsdXNoKGZwKSA6IDA7Ci0JaWYgKGZwLT5fY2xvc2UgIT0gTlVMTCAmJiAoKmZwLT5fY2xvc2Up
KGZwLT5fY29va2llKSA8IDApCi0JCXIgPSBFT0Y7CisKIAlpZiAoZnAtPl9mbGFncyAmIF9fU01C
RikKIAkJZnJlZSgoY2hhciAqKWZwLT5fYmYuX2Jhc2UpOwogCWlmIChIQVNVQihmcCkpCkBAIC04
MCw2ICs4MCw1NSBAQAogCVNURElPX1RIUkVBRF9MT0NLKCk7CiAJZnAtPl9mbGFncyA9IDA7CQkv
KiBSZWxlYXNlIHRoaXMgRklMRSBmb3IgcmV1c2UuICovCiAJU1RESU9fVEhSRUFEX1VOTE9DSygp
OworCisJcmV0dXJuIChyKTsKK30KKworaW50CitmZGNsb3NlKEZJTEUgKmZwKQoreworCWludCBm
ZCwgciwgZXJyOworCisJaWYgKGZwLT5fZmxhZ3MgPT0gMCkgewkvKiBub3Qgb3BlbiEgKi8KKwkJ
ZXJybm8gPSBFQkFERjsKKwkJcmV0dXJuIChFT0YpOworCX0KKworCXIgPSAwOworCUZMT0NLRklM
RShmcCk7CisJZmQgPSBmcC0+X2ZpbGU7CisJaWYgKGZwLT5fY2xvc2UgIT0gX19zY2xvc2UpIHsK
KwkJciA9IEVPRjsKKwkJZXJybm8gPSBFT1BOT1RTVVBQOworCX0gZWxzZSBpZiAoZmQgPCAwKSB7
CisJCXIgPSBFT0Y7CisJCWVycm5vID0gRUJBREY7CisJfQorCWlmIChyID09IEVPRikgeworCQll
cnIgPSBlcnJubzsKKwkJKHZvaWQpY2xlYW5maWxlKGZwLCB0cnVlKTsKKwkJZXJybm8gPSBlcnI7
CisJfSBlbHNlIHsKKwkJciA9IGNsZWFuZmlsZShmcCwgZmFsc2UpOworCX0KIAlGVU5MT0NLRklM
RShmcCk7CisKKwlyZXR1cm4gKHIgPT0gMCA/IGZkIDogcik7Cit9CisKK2ludAorZmNsb3NlKEZJ
TEUgKmZwKQoreworCWludCByOworCisJaWYgKGZwLT5fZmxhZ3MgPT0gMCkgewkvKiBub3Qgb3Bl
biEgKi8KKwkJZXJybm8gPSBFQkFERjsKKwkJcmV0dXJuIChFT0YpOworCX0KKworCUZMT0NLRklM
RShmcCk7CisJciA9IGNsZWFuZmlsZShmcCwgdHJ1ZSk7CisJRlVOTE9DS0ZJTEUoZnApOworCiAJ
cmV0dXJuIChyKTsKIH0K
--20cf3042705a7d7ed004f4d5b4f2--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGOYWV80vTTQbvSjvNa6XBzBiKy%2BjnGantkUH_RO=8prxoHmyQ>