All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@redhat.com>
To: dccp@vger.kernel.org
Subject: Re: [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked
Date: Tue, 15 Apr 2008 20:04:07 +0000	[thread overview]
Message-ID: <20080415200407.GD5025@ghostprotocols.net> (raw)
In-Reply-To: <20080414073915.GA9655@gerrit.erg.abdn.ac.uk>

Em Tue, Apr 15, 2008 at 09:38:40PM +0200, Tomasz Grobelny escreveu:
> Dnia Tuesday 15 of April 2008, Gerrit Renker napisał:
> > | > @@ -501,6 +519,8 @@ struct dccp_sock {
> > | >  	struct ccid			*dccps_hc_rx_ccid;
> > | >  	struct ccid			*dccps_hc_tx_ccid;
> > | >  	struct dccp_options_received	dccps_options_received;
> > | > +	__u8				dccps_qpolicy;
> > | > +	__u32				dccps_tx_qlen;
> > | >  	enum dccp_role			dccps_role:2;
> > | >  	__u8				dccps_hc_rx_insert_options:1;
> > | >  	__u8				dccps_hc_tx_insert_options:1;
> > |
> > | I know that currently none of the policies has any per-socket data. But
> > | if it had were should it go?
> >
> > I can't see anything wrong with putting everything into dccp_sock. To do it
> > well, we could consider inserting documentation such as "this section is
> > only for queueing policies" (as is done very well for struct tcp_sock).
> >
> Let me remind you your comment made on 18/03/2008 on dccp ml to my first 
> patch:
>  --- START --- 
> @@ -545,6 +549,8 @@ struct dccp_sock {
>         __u8                            dccps_hc_tx_insert_options:1;
>         __u8                            dccps_server_timewait:1;
>         struct timer_list               dccps_xmit_timer;
> +       struct queuing_policy           *dccps_policy;
> +       void                            *dccps_policy_data;
>  };
> 
> I think this should be just one field for the policy, and the
> policy_data can be an internal field of `struct queueing_policy'
> (compare with struct ackvec or struct ccid).
>  --- END --- 
> 
> > I see several advantages of this:
> >  * by just storing the u8 of the policy ID, the socket as a whole gets
> > smaller,
> >  * the internals of the function pointer table can be hidden,
> > 
> That's ok with me. 
> 
> > * when not using nested structs, the elements can be optimised for 
> > minimal space,
> I have nothing against it. In fact that's what I did in the first try.
> 
> > | > +	case DCCP_SOCKOPT_QPOLICY_ID:
> > | > +		if (sk->sk_state != DCCP_CLOSED)
> > | > +			err = -EISCONN;
> > |
> > | What about DCCP_LISTENING state?
> >
> > There is a problem with allowing this, considering for example:
> > (...)
> Ok, you are right. If before DCCP_LISTENING there is always DCCP_CLOSED then 
> there is no need to allow changing qpolicy in DCCP_LISTENING state.
> 
> > Please take your time and check through the other parts of the patch as
> > well. I would like to accumulate the issues and then address each of the
> If I didn't mention some parts of the patch you can assume that I'm ok with 
> them.
> 
> > points. And also, do some testing.I haven't had time to write test code for
> > prio policy -- is there something in your SVN repository?
> >
> Have a look at http://dccp.one.pl/svn/userspace/test/ And I'll also do some 
> testing of your patch.
> 
> One more question (probably more for Arnaldo): is there any timeframe to push 
> changes from test tree upstream?

Not at this moment, I'm not managing to dedicate time for another round
of reviewing of what is in Gerrit's tree :-(

- Arnaldo

WARNING: multiple messages have this Message-ID (diff)
From: Arnaldo Carvalho de Melo <acme@redhat.com>
To: Tomasz Grobelny <tomasz@grobelny.oswiecenia.net>
Cc: Gerrit Renker <gerrit@erg.abdn.ac.uk>,
	Arnaldo Carvalho de Melo <acme@redhat.com>,
	dccp@vger.kernel.org, netdev@vger.kernel.org
Subject: Re: [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set
Date: Tue, 15 Apr 2008 17:04:07 -0300	[thread overview]
Message-ID: <20080415200407.GD5025@ghostprotocols.net> (raw)
In-Reply-To: <200804152138.41077.tomasz@grobelny.oswiecenia.net>

Em Tue, Apr 15, 2008 at 09:38:40PM +0200, Tomasz Grobelny escreveu:
> Dnia Tuesday 15 of April 2008, Gerrit Renker napisał:
> > | > @@ -501,6 +519,8 @@ struct dccp_sock {
> > | >  	struct ccid			*dccps_hc_rx_ccid;
> > | >  	struct ccid			*dccps_hc_tx_ccid;
> > | >  	struct dccp_options_received	dccps_options_received;
> > | > +	__u8				dccps_qpolicy;
> > | > +	__u32				dccps_tx_qlen;
> > | >  	enum dccp_role			dccps_role:2;
> > | >  	__u8				dccps_hc_rx_insert_options:1;
> > | >  	__u8				dccps_hc_tx_insert_options:1;
> > |
> > | I know that currently none of the policies has any per-socket data. But
> > | if it had were should it go?
> >
> > I can't see anything wrong with putting everything into dccp_sock. To do it
> > well, we could consider inserting documentation such as "this section is
> > only for queueing policies" (as is done very well for struct tcp_sock).
> >
> Let me remind you your comment made on 18/03/2008 on dccp ml to my first 
> patch:
>  --- START --- 
> @@ -545,6 +549,8 @@ struct dccp_sock {
>         __u8                            dccps_hc_tx_insert_options:1;
>         __u8                            dccps_server_timewait:1;
>         struct timer_list               dccps_xmit_timer;
> +       struct queuing_policy           *dccps_policy;
> +       void                            *dccps_policy_data;
>  };
> 
> I think this should be just one field for the policy, and the
> policy_data can be an internal field of `struct queueing_policy'
> (compare with struct ackvec or struct ccid).
>  --- END --- 
> 
> > I see several advantages of this:
> >  * by just storing the u8 of the policy ID, the socket as a whole gets
> > smaller,
> >  * the internals of the function pointer table can be hidden,
> > 
> That's ok with me. 
> 
> > * when not using nested structs, the elements can be optimised for 
> > minimal space,
> I have nothing against it. In fact that's what I did in the first try.
> 
> > | > +	case DCCP_SOCKOPT_QPOLICY_ID:
> > | > +		if (sk->sk_state != DCCP_CLOSED)
> > | > +			err = -EISCONN;
> > |
> > | What about DCCP_LISTENING state?
> >
> > There is a problem with allowing this, considering for example:
> > (...)
> Ok, you are right. If before DCCP_LISTENING there is always DCCP_CLOSED then 
> there is no need to allow changing qpolicy in DCCP_LISTENING state.
> 
> > Please take your time and check through the other parts of the patch as
> > well. I would like to accumulate the issues and then address each of the
> If I didn't mention some parts of the patch you can assume that I'm ok with 
> them.
> 
> > points. And also, do some testing.I haven't had time to write test code for
> > prio policy -- is there something in your SVN repository?
> >
> Have a look at http://dccp.one.pl/svn/userspace/test/ And I'll also do some 
> testing of your patch.
> 
> One more question (probably more for Arnaldo): is there any timeframe to push 
> changes from test tree upstream?

Not at this moment, I'm not managing to dedicate time for another round
of reviewing of what is in Gerrit's tree :-(

- Arnaldo

  parent reply	other threads:[~2008-04-15 20:04 UTC|newest]

Thread overview: 94+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-14  7:39 [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version Gerrit Renker
2008-04-14  7:39 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
2008-04-14 23:45 ` Tomasz Grobelny
2008-04-14 23:45   ` Tomasz Grobelny
2008-04-15 15:14 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Gerrit Renker
2008-04-15 15:14   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
2008-04-15 15:21 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Gerrit Renker
2008-04-15 15:21   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
2008-04-15 18:01 ` Tomasz Grobelny
2008-04-15 18:01   ` Tomasz Grobelny
2008-04-15 19:38 ` Tomasz Grobelny
2008-04-15 19:38   ` Tomasz Grobelny
2008-04-15 20:14   ` inconsistent lock state with kernel 2.6.24.4 Bernard Pidoux
2008-04-15 20:04 ` Arnaldo Carvalho de Melo [this message]
2008-04-15 20:04   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Arnaldo Carvalho de Melo
2008-04-16  6:20 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Gerrit Renker
2008-04-16  6:20   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
2008-04-16  7:43 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Gerrit Renker
2008-04-16  7:43   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
2008-04-17 18:03 ` Tomasz Grobelny
2008-04-17 18:03   ` Tomasz Grobelny
2008-04-17 18:29 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Gerrit Renker
2008-04-17 18:29   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
2008-04-17 20:03 ` Tomasz Grobelny
2008-04-17 20:03   ` Tomasz Grobelny
2008-04-17 20:20 ` Tomasz Grobelny
2008-04-17 20:20   ` Tomasz Grobelny
2008-04-18 10:13 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Gerrit Renker
2008-04-18 10:13   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
2008-04-19 20:42 ` Tomasz Grobelny
2008-04-19 20:42   ` Tomasz Grobelny
2008-04-20 16:57 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Arnaldo Carvalho de Melo
2008-04-20 16:57   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Arnaldo Carvalho de Melo
2008-04-20 20:12 ` Tomasz Grobelny
2008-04-20 20:12   ` Tomasz Grobelny
2008-04-21 11:45 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version Patrick McHardy
2008-04-21 11:45   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Patrick McHardy
2008-04-21 13:12 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Arnaldo Carvalho de Melo
2008-04-21 13:12   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Arnaldo Carvalho de Melo
2008-04-21 16:17 ` Tomasz Grobelny
2008-04-21 16:17   ` Tomasz Grobelny
2008-04-22  4:56 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version Patrick McHardy
2008-04-22  4:56   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Patrick McHardy
2008-04-22 17:30 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Gerrit Renker
2008-04-22 17:30   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
2008-04-22 17:41 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Gerrit Renker
2008-04-22 17:41   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
2008-04-22 20:30 ` Tomasz Grobelny
2008-04-22 20:30   ` Tomasz Grobelny
2008-04-22 20:45 ` Tomasz Grobelny
2008-04-22 20:45   ` Tomasz Grobelny
2008-04-22 22:06 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked David Miller
2008-04-22 22:06   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set David Miller
2008-04-22 22:42 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked David Miller
2008-04-22 22:42   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set David Miller
2008-04-23  0:03 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version Patrick McHardy
2008-04-23  0:03   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Patrick McHardy
2008-04-25 19:33 ` Tomasz Grobelny
2008-04-25 19:33   ` Tomasz Grobelny
2008-04-25 20:40 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Arnaldo Carvalho de Melo
2008-04-25 20:40   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Arnaldo Carvalho de Melo
2008-04-25 20:58 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked David Miller
2008-04-25 20:58   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set David Miller
2008-04-28  7:21 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Gerrit Renker
2008-04-28  7:21   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
2008-04-28  7:39 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked David Miller
2008-04-28  7:39   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set David Miller
2008-04-28 13:10 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Gerrit Renker
2008-04-28 13:10   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
2008-04-28 21:03 ` Tomasz Grobelny
2008-04-28 21:03   ` Tomasz Grobelny
2008-04-30  7:53 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Gerrit Renker
2008-04-30  7:53   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
2008-05-02 20:39 ` Tomasz Grobelny
2008-05-02 20:39   ` Tomasz Grobelny
2008-05-02 20:56 ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked Gerrit Renker
2008-05-02 20:56   ` [DCCP] [RFC] [Patchv2 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
  -- strict thread matches above, loose matches on Subject: below --
2008-04-24 21:51 [PATCH 1/1] [DCCP][QPOLICY]: External interface changes Tomasz Grobelny
2008-04-24 22:16 ` Tomasz Grobelny
2008-04-24 22:16   ` Tomasz Grobelny
2008-04-28 15:08 ` Gerrit Renker
2008-04-28 15:08   ` Gerrit Renker
2008-04-28 21:29 ` Tomasz Grobelny
2008-04-28 21:29   ` Tomasz Grobelny
2008-04-16  8:36 [DCCP] [RFC] [Patchv3 1/1]: Queuing policies -- reworked version Gerrit Renker
2008-04-16  8:36 ` [DCCP] [RFC] [Patchv3 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
2008-04-28 15:19 ` [DCCP] [RFC] [Patchv3 1/1]: Queuing policies -- reworked version Gerrit Renker
2008-04-28 15:19   ` [DCCP] [RFC] [Patchv3 1/1]: Queuing policies -- reworked version of Tomasz's patch set Gerrit Renker
2008-04-28 20:12 ` Tomasz Grobelny
2008-04-28 20:12   ` Tomasz Grobelny
2008-04-11 10:24 [PATCH 0/5] [DCCP]: Queuing policies Tomasz Grobelny
2008-04-11 10:24 ` Tomasz Grobelny
2008-04-14  6:50 ` Gerrit Renker
2008-04-14  6:50   ` Gerrit Renker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080415200407.GD5025@ghostprotocols.net \
    --to=acme@redhat.com \
    --cc=dccp@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.