[stgt] persistent reservations through power loss

Alexander Gordeev agordeev at parallels.com
Wed Sep 18 17:41:25 CEST 2013


Hi!

I'd like to add correct handling of APTPL bit in PR OUT commands. I
have the following plan:
1. create a new parameter ('pr_storage' ?) for target/LUN where tgtd
should store registrations and reservations according to the SCSI spec
2. tgtd should read this storage LUN creation and populate lists of
registrations and reservations and save the fd in the struct scsi_lu
3. adjust capabilities: return 1 for APTPL if the parameter is set for
a LUN
4. when tgtd receives PR OUT command with APTPL set, it should
asynchronously write changes to the store

Are you interested in these changes? What do you think about the plan?
Is there anything else I should do too?

I also have some questions regarding storage format and writing changes
asynchronously.

I'd like to do it in a way that minimizes fs metadata changes so it
should have some fixed size if possible. Are there any limits on the
number of sessions per LUN or registartions per LUN in tgtd?

I'm not really familiar with tgtd's event loop (yet). How should
working with PR storage be implemented? I think of opening fds with
O_NONBLOCK and then using tgt_event_* functions to add by callbacks and
control event mask. But how should I defer the returning of PR OUT
status code?

Thanks in advance for any help!

-- 
  Alexander
--
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html



More information about the stgt mailing list