In D27666#629538, @emaste wrote:In D27666#629463, @mw wrote:Thanks @emaste. Is there any part requiring additional work / contribution? If yes, please reach me out, so we can sync and help with whatever is needed.
Mainly I think we need to make a concerted effort towards identifying ports that require ELF feature tags to opt out of various features, and some common mechanism (either infrastructure or template approach) for setting those bits. I submitted PR252629
As above PR239873 reports issues with firefox and thunderbird with ASLR stack gap. I found libreoffice is incompatible with W^X and submitted PR252689 for that.
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Feed Advanced Search
Advanced Search
Advanced Search
Jan 15 2021
Jan 15 2021
Jan 14 2021
Jan 14 2021
In D27666#629463, @mw wrote:Thanks @emaste. Is there any part requiring additional work / contribution? If yes, please reach me out, so we can sync and help with whatever is needed.
In D27666#628869, @emaste wrote:Related PRs/reviews to check out:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=252629
D28139
D28140
Jan 13 2021
Jan 13 2021
Related PRs/reviews to check out:
Hi! Any thoughts? If no objections, I plan to merge the patch after February 5th.
Dec 29 2020
Dec 29 2020
Hi! Any thoughts about the patch? Do you have objections to get it merged?
Dec 24 2020
Dec 24 2020
Dec 18 2020
Dec 18 2020
Nov 16 2020
Nov 16 2020
Any chance that this patch would make it into 13.0 RELEASE?
Nov 6 2020
Nov 6 2020
Sep 12 2020
Sep 12 2020
In D26243#587330, @asomers wrote:Isn't audit_nfsarg_vnode1 the problem? You already know the path when you call AUDIT_ARG_UPATH1_VP, right?
Sep 11 2020
Sep 11 2020
In D26243#587174, @shivank wrote:In D26243#587132, @mjg wrote:Audit support for regular lookup starts with AUDIT_ARG_UPATH1_VP/AUDIT_ARG_UPATH2_VP without any vnodes locked. Later on visited vnodes get added with AUDIT_ARG_VNODE1/AUDIT_ARG_VNODE2 which only performs VOP_GETATTR (i.e. does *NOT* resolve any paths). Your code should follow the same scheme.
As you can see path resolving routines can take vnode locks on their own (modulo the smr case). This means they can't be called with locked vnodes to begin with, as otherwise you risk violating global lock ordering and consequently deadlocking the kernel.
The VOP_ISLOCKED routine is not entirely legal to call if you don't hold the lock. The name is perhaps misleading, but it can only reliably tell you that you have an exclusive lock or that *SOMEONE* has a shared lock (and it may be you). Or to put it differently, if you don't have the vnode locked but someone else has it shared locked, you will get non-0 and that's how you get the panic. Regardless of this problem, adding the call reduces performance and most notably suggests a bug on its own.
So the question is why are you calling here with any vnodes locked.
I wish to audit the canonical path of the file requested by the NFS clients. The requested path from the client is extracted in the NFS server using nfsrv_parsename, but the vnode is locked in some NFS services. I thought of unlocking/relocking of vnode for path audit but Rick advised not to. That's why I had to call this locked vnode.
Thanks for your question which made me rethink the problem from scratch and I got a new idea for auditing path.
Hi @rmacklem and @asomers, if I use nfsvno_namei to get the canonical path for the client, I will not the need the AUDIT_ARG_UPATH1_VP.which will save me from all the trouble of passing locked vnode to vn_fullpath_global. Please provide your opinion on the same.
In D26243#587132, @mjg wrote:Audit support for regular lookup starts with AUDIT_ARG_UPATH1_VP/AUDIT_ARG_UPATH2_VP without any vnodes locked. Later on visited vnodes get added with AUDIT_ARG_VNODE1/AUDIT_ARG_VNODE2 which only performs VOP_GETATTR (i.e. does *NOT* resolve any paths). Your code should follow the same scheme.
As you can see path resolving routines can take vnode locks on their own (modulo the smr case). This means they can't be called with locked vnodes to begin with, as otherwise you risk violating global lock ordering and consequently deadlocking the kernel.
The VOP_ISLOCKED routine is not entirely legal to call if you don't hold the lock. The name is perhaps misleading, but it can only reliably tell you that you have an exclusive lock or that *SOMEONE* has a shared lock (and it may be you). Or to put it differently, if you don't have the vnode locked but someone else has it shared locked, you will get non-0 and that's how you get the panic. Regardless of this problem, adding the call reduces performance and most notably suggests a bug on its own.
So the question is why are you calling here with any vnodes locked.
Audit support for regular lookup starts with AUDIT_ARG_UPATH1_VP/AUDIT_ARG_UPATH2_VP without any vnodes locked. Later on visited vnodes get added with AUDIT_ARG_VNODE1/AUDIT_ARG_VNODE2 which only performs VOP_GETATTR (i.e. does *NOT* resolve any paths). Your code should follow the same scheme.
Sep 10 2020
Sep 10 2020
I feel vfs_cache.c changes for making vn_fullpath_global work for optionally locked vnode are causing the trouble. Though I'm not sure what's the problem. I request Mateusz Guzik, @mjg to have a look at my vfs_cache.c changes. I would be grateful for your time.
Sep 7 2020
Sep 7 2020
The new code looks better. But grrr, there are two big problems:
- It doesn't compile due to some recent changes on head. I suggest the following:
- Remove the <rpc/rpc.h>, <sys/mount.h>, and <fs/nfs/*> includes from audit.h. In addition to fixing the compile failure, it's generally not recommended to include headers from other headers. Sometimes it's necessary, but it also causes header pollution, and slow build times. Instead of including those files, just forward declare struct nfsrv_descript; and struct kaudit_record;.
- Add `<netinet/in.h>, <rpc/rpc.h>, <fs/nfs/nfsdport.h>, <fs/nfs/nfsproto.h>, and <fs/nfs/nfs.h> to audit_bsm_db.c
- Add <rpc/rpc.h>, <fs/nfs/nfsport.h>, <fs/nfs/nfsproto.h>, and <fs/nfs/nfs.h> to audit.c
- merge vn_fullpath_any and vn_vptocnp with their locked counterpart to work for optionally locked vnodes.
Sep 6 2020
Sep 6 2020
Aug 31 2020
Aug 31 2020
I created a new review - D26243. Sorry for the trouble.
It was earlier being reviewed on D25869. But due to change of base revision, It was showing changes which were not mine. So, I created a new review here.
Aug 30 2020
Aug 30 2020
In D25869#583083, @shivank wrote:It looks like your most recent change rebased the base revision. That makes it very hard to see which changes are from you and which aren't. Could you please either un-rebase it or, if that's not possible, open a new review?
Ohh, Sorry! I didn't thought pulling HEAD changes will create this side-effect in revision
I think I would open a new review as going back will have conflicting changes again. Should I abandon this while creating a new one??
It looks like your most recent change rebased the base revision. That makes it very hard to see which changes are from you and which aren't. Could you please either un-rebase it or, if that's not possible, open a new review?
Using two completely separate functions reduces the scope of error. Also prevent any mutation to the current code path for not locked vnodes, while allowing it to work for locked vnodes.
Aug 28 2020
Aug 28 2020
- updated sys/kern/vfs_cache.c to reduce code duplication with vn_fullpath_dir
- some trivial changes
Aug 20 2020
Aug 20 2020
Regarding code duplication in vn_fullpath_dir_locked:
I modified vn_fullpath_dir(and removed vn_fullpath_dir_locked) for optionally locked vnode here in git commit: https://github.com/shivankgarg98/freebsd/commit/418c1c2a6de9989fe7a541f6111ee2c3f2786c7b
It works fine NFSv4=3 case but somehow breaks nfsrvd_open to result in an error.{and hence can't open/create a regular file from client}.
Using two completely separate functions reduces the scope of error. Also prevent any mutation to the current code path for not locked vnodes, while allowing it to work for locked vnodes.
follow-up on suggested changes.
Aug 19 2020
Aug 19 2020
This is a much better locking strategy. However, there's a lot of duplicated code. Could you maybe combine the _locked with the original functions, so there wouldn't be so much duplication?
Aug 4 2020
Aug 4 2020
removing unlocking/relocking implementation for vnode for auditing path, instead, define separate functions in vfs_cache.c for locked vnode as argument.
Jul 30 2020
Jul 30 2020
Thanks for all suggestions. I have incorporated them into my code. There is just a directory vnode unlocking/relocking issue not done yet.
In summary, locking and unlocking vnodes in this code is dangerous
and I am not in a position to make sure what you do is safe.
Jul 29 2020
Jul 29 2020
follow up on changes suggested by asomers@
Jul 28 2020
Jul 28 2020
Jun 27 2019
Jun 27 2019
cperciva added inline comments to D20780: Add support for getting early entropy from the UEFI RNG protocol.
D20780: Add support for getting early entropy from the UEFI RNG protocol now requires changes to proceed.
bcran added inline comments to D20780: Add support for getting early entropy from the UEFI RNG protocol.
cem added inline comments to D20780: Add support for getting early entropy from the UEFI RNG protocol.
val_packett.cool added inline comments to D20780: Add support for getting early entropy from the UEFI RNG protocol.
D20780: Add support for getting early entropy from the UEFI RNG protocol is now accepted and ready to land.
Presuming all the testing works :-)
cperciva added inline comments to D20780: Add support for getting early entropy from the UEFI RNG protocol.
emaste updated subscribers of D20780: Add support for getting early entropy from the UEFI RNG protocol.
cem updated subscribers of D20780: Add support for getting early entropy from the UEFI RNG protocol.
May 11 2019
May 11 2019
Apr 1 2019
Apr 1 2019
royce_techsolvency.com added a comment to D15713: Bug 182518 - [login.conf] Better Password Hashes .
Minor comment - results of real-world testing of cracking resistance, both for the 11.x defaults and for those proposed by D15713.
Sep 1 2018
Sep 1 2018
All comments are minor.
Aug 20 2018
Aug 20 2018
Any chance of this being moved forward in time for the 12 branch?
Aug 16 2018
Aug 16 2018
482254ac_razorfever.net added inline comments to D15713: Bug 182518 - [login.conf] Better Password Hashes .
482254ac_razorfever.net updated the diff for D15713: Bug 182518 - [login.conf] Better Password Hashes .
I'm hopeful that this fixes style, and other suggestions from delphij.
Aug 9 2018
Aug 9 2018
482254ac_razorfever.net updated the diff for D15713: Bug 182518 - [login.conf] Better Password Hashes .
Updates remaining man styles.
Aug 3 2018
Aug 3 2018
482254ac_razorfever.net added inline comments to D15713: Bug 182518 - [login.conf] Better Password Hashes .
In fairness, this example pre-dates the crypt_r in FreeBSD by 4+ years.
482254ac_razorfever.net added inline comments to D15713: Bug 182518 - [login.conf] Better Password Hashes .
Aug 2 2018
Aug 2 2018
482254ac_razorfever.net added inline comments to D15713: Bug 182518 - [login.conf] Better Password Hashes .
Aug 1 2018
Aug 1 2018
Jul 31 2018
Jul 31 2018
482254ac_razorfever.net updated the diff for D15713: Bug 182518 - [login.conf] Better Password Hashes .
This update covers the linting, and simplified example code in the libcrypt manpage.
Jul 28 2018
Jul 28 2018
Could you please split the proposed change to smaller pieces, so it would be easier to review?
Jul 27 2018
Jul 27 2018
allanjude added reviewers for D15713: Bug 182518 - [login.conf] Better Password Hashes : delphij, jmg.
Jul 16 2018
Jul 16 2018
There are a bunch of style issues with crypt.3. Can you run "mandoc -Tlint" and textproc/igor (from ports/packages) on it? It should give you some feedback where the problems are. For example, man pages need a line break after a sentence stop.
Jun 11 2018
Jun 11 2018
allanjude added a reviewer for D15713: Bug 182518 - [login.conf] Better Password Hashes : allanjude.
Jun 10 2018
Jun 10 2018
482254ac_razorfever.net updated the diff for D15713: Bug 182518 - [login.conf] Better Password Hashes .
Fix loop always executing twice (in pw+pam_unix), with leaky memory.
Jun 9 2018
Jun 9 2018
482254ac_razorfever.net updated the diff for D15713: Bug 182518 - [login.conf] Better Password Hashes .
Fix accent on David's name, per imp feedback.
482254ac_razorfever.net updated the summary of D15713: Bug 182518 - [login.conf] Better Password Hashes .
May 8 2018
May 8 2018
Mar 13 2018
Mar 13 2018
Jul 7 2017
Jul 7 2017
tz closed D11515: lang/php70: Update to 7.0.21 by committing rP445231: Update PHP 7 from 7.0.20 to 7.0.21.
Was already committed in r445228.
Jun 30 2017
Jun 30 2017
Jun 11 2017
Jun 11 2017
Mar 22 2016
Mar 22 2016
Jan 19 2016
Jan 19 2016
bapt accepted D4771: libfetch: test for /etc/ssl/cert.pem existence to avoid masking SSL_CA_CERT_PATH.
As been committed as rS294326 (discussed with des)
Jan 4 2016
Jan 4 2016
john_saltant.com updated the test plan for D4771: libfetch: test for /etc/ssl/cert.pem existence to avoid masking SSL_CA_CERT_PATH.
Jan 3 2016
Jan 3 2016
john_saltant.com retitled D4771: libfetch: test for /etc/ssl/cert.pem existence to avoid masking SSL_CA_CERT_PATH from to libfetch: test for /etc/ssl/cert.pem existence to avoid masking SSL_CA_CERT_PATH.
Oct 22 2015
Oct 22 2015
Apologies, I intended to Commandeer -> Close.
Oct 8 2015
Oct 8 2015
This is already in the tree (apparently no one approved it though).
Oct 4 2015
Oct 4 2015
Committed as r288669.
Oct 3 2015
Oct 3 2015
Results from exp-run (PR 2013394) are out:
Exp-run results on head i386:
http://package23.nyi.freebsd.org/jail.html?mastername=headi386PR203394-default
Sep 28 2015
Sep 28 2015
Peter Holm has kindly provided some testing:
Sep 26 2015
Sep 26 2015
In D3463#77043, @delphij wrote:
...
Will it be possible that you can provide some basic test data, for instance, a few world stone runs on memory disk, and see how exactly the impact would be? It would be easier to convince people when you have first hand data, and although we know others have already do some testing, it's important to know if the same applies on FreeBSD because it's likely that the experiments were not on FreeBSD, and the result may be different.
Sep 25 2015
Sep 25 2015
I'll patch my laptop and have started a clean build so I'll see if there would be visible performance/other impact after running with it for a few days.