Delete now-unused code from netfslib, given the changes to the writeback
dispatch code and the combination of ->prepare_xxx() and ->issue_xxx()
methods.

Signed-off-by: David Howells <[email protected]>
cc: Paulo Alcantara <[email protected]>
cc: Matthew Wilcox <[email protected]>
cc: Christoph Hellwig <[email protected]>
cc: [email protected]
cc: [email protected]
---
 fs/netfs/write_issue.c | 217 -----------------------------------------
 1 file changed, 217 deletions(-)

diff --git a/fs/netfs/write_issue.c b/fs/netfs/write_issue.c
index 0a79da073f03..9a258386a1c3 100644
--- a/fs/netfs/write_issue.c
+++ b/fs/netfs/write_issue.c
@@ -222,70 +222,6 @@ struct netfs_io_subrequest 
*netfs_alloc_write_subreq(struct netfs_io_request *wr
        return subreq;
 }
 
-#if 0 // TODO: Remove old stuff
-/*
- * Prepare a write subrequest.  We need to allocate a new subrequest
- * if we don't have one.
- */
-void netfs_prepare_write(struct netfs_io_request *wreq,
-                        struct netfs_io_stream *stream,
-                        uoff_t start)
-{
-       struct netfs_io_subrequest *subreq;
-
-       subreq = netfs_alloc_subrequest(wreq, stream->source);
-       if (!subreq)
-               return;
-       subreq->start           = start;
-       subreq->stream_nr       = stream->stream_nr;
-
-       bvecq_pos_set(&subreq->dispatch_pos, &wreq->dispatch_cursor);
-
-       _enter("R=%x[%x]", wreq->debug_id, subreq->debug_index);
-
-       trace_netfs_sreq(subreq, netfs_sreq_trace_prepare);
-
-       stream->sreq_max_len    = UINT_MAX;
-       stream->sreq_max_segs   = INT_MAX;
-       switch (stream->source) {
-       case NETFS_UPLOAD_TO_SERVER:
-               netfs_stat(&netfs_n_wh_upload);
-               stream->sreq_max_len = wreq->wsize;
-               break;
-       case NETFS_WRITE_TO_CACHE:
-               netfs_stat(&netfs_n_wh_write);
-               break;
-       default:
-               WARN_ON_ONCE(1);
-               break;
-       }
-
-       if (stream->prepare_write)
-               stream->prepare_write(subreq);
-
-       __set_bit(NETFS_SREQ_IN_PROGRESS, &subreq->flags);
-
-       /* We add to the end of the list whilst the collector may be walking
-        * the list.  The collector only goes nextwards and uses the lock to
-        * remove entries off of the front.
-        */
-       spin_lock(&wreq->lock);
-       /* Write IN_PROGRESS before pointer to new subreq */
-       list_add_tail_release(&subreq->rreq_link, &stream->subrequests);
-       if (list_is_first(&subreq->rreq_link, &stream->subrequests)) {
-               if (!stream->active) {
-                       stream->collected_to = subreq->start;
-                       /* Write list pointers before active flag */
-                       smp_store_release(&stream->active, true);
-               }
-       }
-
-       spin_unlock(&wreq->lock);
-
-       stream->construct = subreq;
-}
-#endif
-
 /*
  * Advance the state of the amount of data buffered on a stream.
  */
@@ -368,159 +304,6 @@ int netfs_prepare_write_buffer(struct netfs_io_subrequest 
*subreq,
 }
 EXPORT_SYMBOL(netfs_prepare_write_buffer);
 
-#if 0 // TODO: Remove old stuff
-/*
- * Set the I/O iterator for the filesystem/cache to use and dispatch the I/O
- * operation.  The operation may be asynchronous and should call
- * netfs_write_subrequest_terminated() when complete.
- */
-static void netfs_do_issue_write(struct netfs_io_stream *stream,
-                                struct netfs_io_subrequest *subreq)
-{
-       struct netfs_io_request *wreq = subreq->rreq;
-
-       _enter("R=%x[%x],%zx", wreq->debug_id, subreq->debug_index, 
subreq->len);
-
-       if (stream->source == NETFS_WRITE_TO_CACHE &&
-           unlikely(test_bit(NETFS_RREQ_CACHE_STOP, &wreq->flags))) {
-               size_t dio_size = wreq->cache_resources.dio_size;
-               size_t len, disp;
-
-               disp = subreq->start & (dio_size - 1);
-               len = round_up(subreq->len + disp, dio_size);
-
-               subreq->start -= disp;
-               subreq->len = len;
-
-               __set_bit(NETFS_SREQ_CANCELLED, &subreq->flags);
-               return netfs_write_subrequest_terminated(subreq, subreq->len);
-       }
-
-       if (test_bit(NETFS_SREQ_FAILED, &subreq->flags))
-               return netfs_write_subrequest_terminated(subreq, subreq->error);
-
-       trace_netfs_sreq(subreq, netfs_sreq_trace_submit);
-       stream->issue_write(subreq);
-}
-
-void netfs_reissue_write(struct netfs_io_stream *stream,
-                        struct netfs_io_subrequest *subreq)
-{
-       // TODO: Use encrypted buffer
-       bvecq_pos_unset(&subreq->content);
-       bvecq_pos_set(&subreq->content, &subreq->dispatch_pos);
-       iov_iter_bvec_queue(&subreq->io_iter, ITER_SOURCE,
-                           subreq->content.bvecq, subreq->content.slot,
-                           subreq->content.offset,
-                           subreq->len);
-       iov_iter_advance(&subreq->io_iter, subreq->transferred);
-
-       subreq->retry_count++;
-       subreq->error = 0;
-       __clear_bit(NETFS_SREQ_MADE_PROGRESS, &subreq->flags);
-       __set_bit(NETFS_SREQ_IN_PROGRESS, &subreq->flags);
-       netfs_stat(&netfs_n_wh_retry_write_subreq);
-       netfs_do_issue_write(stream, subreq);
-}
-
-static void netfs_issue_write(struct netfs_io_request *wreq,
-                             struct netfs_io_stream *stream)
-{
-       struct netfs_io_subrequest *subreq = stream->construct;
-
-       if (!subreq)
-               return;
-
-       bvecq_pos_set(&subreq->content, &subreq->dispatch_pos);
-       iov_iter_bvec_queue(&subreq->io_iter, ITER_SOURCE,
-                           subreq->content.bvecq, subreq->content.slot,
-                           subreq->content.offset,
-                           subreq->len);
-
-       stream->construct = NULL;
-       netfs_do_issue_write(stream, subreq);
-}
-
-/*
- * Add data to the write subrequest, dispatching each as we fill it up or if it
- * is discontiguous with the previous.  We only fill one part at a time so that
- * we can avoid overrunning the credits obtained (cifs) and try to parallelise
- * content-crypto preparation with network writes.
- */
-size_t netfs_advance_write(struct netfs_io_request *wreq,
-                          struct netfs_io_stream *stream,
-                          uoff_t start, size_t len, bool to_eof)
-{
-       struct netfs_io_subrequest *subreq = stream->construct;
-       size_t part;
-
-       if (!stream->avail) {
-               _leave("no write");
-               return len;
-       }
-
-       _enter("R=%x[%x]", wreq->debug_id, subreq ? subreq->debug_index : 0);
-
-       if (subreq && start != subreq->start + subreq->len) {
-               netfs_issue_write(wreq, stream);
-               subreq = NULL;
-       }
-
-       if (!stream->construct)
-               netfs_prepare_write(wreq, stream, start);
-       subreq = stream->construct;
-
-       part = umin(stream->sreq_max_len - subreq->len, len);
-       _debug("part %zx/%zx %zx/%zx", subreq->len, stream->sreq_max_len, part, 
len);
-       subreq->len += part;
-       subreq->nr_segs++;
-
-       if (subreq->len >= stream->sreq_max_len ||
-           subreq->nr_segs >= stream->sreq_max_segs ||
-           to_eof) {
-               netfs_issue_write(wreq, stream);
-               subreq = NULL;
-       }
-
-       return part;
-}
-
-/*
- * Prepare and issue a subrequest.
- * TODO: Replace with combined ->prepare/->issue call().
- */
-static int netfs_prep_and_issue_subreq(struct netfs_io_request *wreq,
-                                      struct netfs_io_stream *stream,
-                                      struct netfs_io_subrequest *subreq)
-{
-       stream->sreq_max_len    = UINT_MAX;
-       stream->sreq_max_segs   = INT_MAX;
-       switch (stream->source) {
-       case NETFS_UPLOAD_TO_SERVER:
-               netfs_stat(&netfs_n_wh_upload);
-               stream->sreq_max_len = wreq->wsize;
-               break;
-       case NETFS_WRITE_TO_CACHE:
-               netfs_stat(&netfs_n_wh_write);
-               break;
-       default:
-               WARN_ON_ONCE(1);
-               break;
-       }
-
-       if (stream->prepare_write)
-               stream->prepare_write(subreq);
-       netfs_prepare_buffered_write_buffer(subreq, stream->sreq_max_segs);
-       iov_iter_bvec_queue(&subreq->io_iter, ITER_SOURCE,
-                           subreq->content.bvecq, subreq->content.slot,
-                           subreq->content.offset,
-                           subreq->len);
-       trace_netfs_sreq(subreq, netfs_sreq_trace_submit);
-       stream->issue_write(subreq);
-       return 0;
-}
-#endif
-
 /*
  * Issue writes for a stream.
  */


Reply via email to