Dan McDonald wrote:

BTW: I ran into this CR IPsec CR once
6512601 panic in ipsec_in_tag - allocation failure
and I have a fix for it in spd.c in
file:///net/nptbld-x.sfbay/disk1/nordmark/si-only/webrev/index.html

If you review the fix then we can do it as part of the IP Instances putback.

DM-12   ar_open()       T2 or   What if netstack_find_by_cred() fails?
                        E2      Or won't it?  A small comment would be nice
                                if it never fails.
It will never fail.
The ASSERT is partly there as documentation. The ASSERT is for
netstack_arp field.
Do you prefer two asserts as a way to document this e.g.
        ns = netstack_find_by_cred();
        ASSERT(ns != NULL);
        as = ns->netstack_arp;
        ASSERT(as != NULL);

Yeah, that works better for ASSERT()-as-documentation purposes.

OK. I'll tweak that.

usr/src/uts/common/inet/ip/icmp_opt_data.c

------- --------------- ------- -----------------------------------------------
No.     Location        Sev.    Comment
------- --------------- ------- -----------------------------------------------

DM-17   Line 153        T4      This looks like a separate bugfix.  Is it?
It showed up with IP Instances since we depend on the privilege checks
working. Do you want to have us file a separate CR?

Most people like to see distinct CRs when prior-to-project bugs are
found-and-fixed.  E.g. Tunnel Reform found a bunch of flaky code due to its
test regimen.

I'm not sure whether it is "most" or a "few vocal ones".
It is useful to have a separate CR it is a bug that somebody else it likely to run into (e.g., the CR for ipsec_in_tag), but if we make this a "must" then it actually becomes an impediment to improving Solaris.

For instance, if you ask that the future IP datapath refactoring file a CR for every bug it fixes then that project would be dead in its tracks; while I can figure how things should work to be correct I can't actually see all the current bugs that are in the interaction between e.g. IPv6 external resolvers, MULTIRT, IPsec, and multicast. We don't even know if that combination works. Thus I don't think this should be a "must" and there isn't a strong argument to having a separate CR in this case.

Note that I think IPsec in onnv has an issue with kEF asynch operations
where there doesn't seem to be a way to prevent esp/ah from unloading
with pending asynch callbacks. If you think this an issue in onnv I can
file a CR.

Currently ESP and AH *can't* unload once they're loaded, but please file a P5
bug if we add the ability to unload AH/ESP.

I think you mean that it can't be unloaded once keysock_plumb_ipsec() has run; it does unload after having be loaded by the reconfiguration reboot mechanism that loads everything (and I've seen it unload).

But if it doesn't load once it has been plumbed, why do the esp/ah kstats use KSTAT_FLAG_PERSISTENT? I thought the motivation for that was to handle not loosing the stats when there is an unload followed by a load.


DM-33   Action hash     T4      I might argue that the interned action
                                pointers might be global across all
                                instances.  IMHO it's a good question for
                                ipsec-core (esp. Bill).
The approach we've taking is "everything is separate unless it needs to be shared" and opposed to "everything is shared unless it needs to be separate". Thus it would take some convincing that the action hash must be shared.

I think Bill mentioned something to you off-list.  It's all about memory
footprint - we'll see if it becomes an issue if someone configures a box with
lotsa non-shared zones with similar IPsec policies.

That same type of argument can be applied to other parts of IP for the cases when lots of IP Instances have the same configuration. And sharing some data structures but not others lead to a complexity explosion; part of the motivation for IP Instances is actually to allow us to at least study getting rid of the implementation complexity introduced by the shared stack zones support.

   Erik





_______________________________________________
networking-discuss mailing list
[email protected]

Reply via email to