Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 227361 Details for
Bug 331891
rsync hangs with verbosity higher then 2
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
rsync-2.6.4-three-verbosity.patch
rsync-2.6.4-three-verbosity.patch (text/plain), 3.83 KB, created by
Jose Plans
on 2007-10-15 07:44:54 UTC
(
hide
)
Description:
rsync-2.6.4-three-verbosity.patch
Filename:
MIME Type:
Creator:
Jose Plans
Created:
2007-10-15 07:44:54 UTC
Size:
3.83 KB
patch
obsolete
>--- rsync-2.6.3/main.c.verbosity 2007-07-19 11:36:02.000000000 +1000 >+++ rsync-2.6.3/main.c 2007-07-19 11:41:13.000000000 +1000 >@@ -544,6 +544,13 @@ > struct file_list *flist; > char *local_name = NULL; > char *dir = NULL; >+ int save_verbose = verbose; >+ >+ if (filesfrom_fd >= 0) { >+ /* We can't mix messages with files-from data on the socket, >+ * so temporarily turn off verbose messages. */ >+ verbose = 0; >+ } > > if (verbose > 2) { > rprintf(FINFO, "server_recv(%d) starting pid=%ld\n", >@@ -573,15 +580,17 @@ > recv_exclude_list(f_in); > > if (filesfrom_fd >= 0) { >- /* We're receiving the file info from the sender, so we need >- * the IO routines to automatically write out the names onto >- * our f_out socket as we read the list info from the sender. >- * This avoids both deadlock and extra delays/buffers. */ >+ /* We need to send the files-from names to the sender at the >+ * same time that we receive the file-list from them, so we >+ * need the IO routines to automatically write out the names >+ * onto our f_out socket as we read the file-list. This >+ * avoids both deadlock and extra delays/buffers. */ > io_set_filesfrom_fds(filesfrom_fd, f_out); > filesfrom_fd = -1; > } > > flist = recv_file_list(f_in); >+ verbose = save_verbose; > if (!flist) { > rprintf(FERROR,"server_recv: recv_file_list error\n"); > exit_cleanup(RERR_FILESELECT); >@@ -670,6 +679,8 @@ > if (am_sender) { > keep_dirlinks = 0; /* Must be disabled on the sender. */ > io_start_buffering_out(); >+ if (!remote_filesfrom_file) >+ set_msg_fd_in(f_in); > if (cvs_exclude) > add_cvs_excludes(); > if (delete_mode && !delete_excluded) >@@ -681,6 +692,7 @@ > start_write_batch(f_out); > if (!read_batch) /* don't write to pipe */ > flist = send_file_list(f_out,argc,argv); >+ set_msg_fd_in(-1); > if (verbose > 3) > rprintf(FINFO,"file list sent\n"); > >--- rsync-2.6.3/io.c.verbosity 2007-07-19 11:36:17.000000000 +1000 >+++ rsync-2.6.3/io.c 2007-07-19 11:37:51.000000000 +1000 >@@ -46,6 +46,7 @@ > extern int am_server; > extern int am_daemon; > extern int am_sender; >+extern int am_generator; > extern int eol_nulls; > extern int checksum_seed; > extern int protocol_version; >@@ -162,17 +163,17 @@ > sock_f_out = f_out; > } > >-/** Setup the fd used to receive MSG_* messages. Only needed when >- * we're the generator because the sender and receiver both use the >- * multiplexed I/O setup. */ >+/* Setup the fd used to receive MSG_* messages. Only needed during the >+ * early stages of being a local sender (up through the sending of the >+ * file list) or when we're the generator (to fetch the messages from >+ * the receiver). */ > void set_msg_fd_in(int fd) > { > msg_fd_in = fd; > } > >-/** Setup the fd used to send our MSG_* messages. Only needed when >- * we're the receiver because the generator and the sender both use >- * the multiplexed I/O setup. */ >+/* Setup the fd used to send our MSG_* messages. Only needed when >+ * we're the receiver (to send our messages to the generator). */ > void set_msg_fd_out(int fd) > { > msg_fd_out = fd; >@@ -205,8 +206,10 @@ > msg_list_push(NORMAL_FLUSH); > } > >-/** Read a message from the MSG_* fd and dispatch it. This is only >- * called by the generator. */ >+/* Read a message from the MSG_* fd and handle it. This is called either >+ * during the early stages of being a local sender (up through the sending >+ * of the file list) or when we're the generator (to fetch the messages >+ * from the receiver). */ > static void read_msg_fd(void) > { > char buf[2048]; >@@ -226,14 +229,14 @@ > > switch (tag) { > case MSG_DONE: >- if (len != 0) { >+ if (len != 0 || !am_generator) { > rprintf(FERROR, "invalid message %d:%d\n", tag, len); > exit_cleanup(RERR_STREAMIO); > } > redo_list_add(-1); > break; > case MSG_REDO: >- if (len != 4) { >+ if (len != 4 || !am_generator) { > rprintf(FERROR, "invalid message %d:%d\n", tag, len); > exit_cleanup(RERR_STREAMIO); > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 331891
: 227361