This is in response to the previous discussions about login times when scaling out to thousands of sessions.
I'm still looking at converting to libudev, but it's going to be a big enough change that I thought it might make sense to just remove the attr_list on it's own first. Sysfs paths are rarely re-read without clearing the list first anyway, and after a few hundred sessions operations become CPU bound on doing strcmp against every item in the list. Managing the lifetime of the read value string, instead of letting it live on in the attr_list, was helped by the fact that attributes are mostly read from translating wrappers (sysfs_get_int, sysfs_get_str) There are still some issues to handling thousands of sessions. The next one I see is the per-session memory footprint of iscsid, with the big hit being the 32 8k buffers allocated for netlink messages per session. - Chris usr/host.c | 1 + usr/session_info.c | 1 + usr/sysfs.c | 62 ++++++++++++------------------------------------------ 3 files changed, 16 insertions(+), 48 deletions(-) -- 2.5.0 -- You received this message because you are subscribed to the Google Groups "open-iscsi" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/open-iscsi. For more options, visit https://groups.google.com/d/optout.
