Print this page
7127  remove -Wno-missing-braces from Makefile.uts

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/inet/tcp/tcp_tunables.c
          +++ new/usr/src/uts/common/inet/tcp/tcp_tunables.c
↓ open down ↓ 241 lines elided ↑ open up ↑
 242  242  /*
 243  243   * All of these are alterable, within the min/max values given, at run time.
 244  244   *
 245  245   * Note: All those tunables which do not start with "_" are Committed and
 246  246   * therefore are public. See PSARC 2010/080.
 247  247   */
 248  248  mod_prop_info_t tcp_propinfo_tbl[] = {
 249  249          /* tunable - 0 */
 250  250          { "_time_wait_interval", MOD_PROTO_TCP,
 251  251              mod_set_uint32, mod_get_uint32,
 252      -            {1*SECONDS, TCP_TIME_WAIT_MAX, 1*MINUTES}, {1*MINUTES} },
      252 +            {{1*SECONDS, TCP_TIME_WAIT_MAX, 1*MINUTES}}, {1*MINUTES} },
 253  253  
 254  254          { "_conn_req_max_q", MOD_PROTO_TCP,
 255  255              mod_set_uint32, mod_get_uint32,
 256      -            {1, UINT32_MAX, 128}, {128} },
      256 +            {{1, UINT32_MAX, 128}}, {128} },
 257  257  
 258  258          { "_conn_req_max_q0", MOD_PROTO_TCP,
 259  259              mod_set_uint32, mod_get_uint32,
 260      -            {0, UINT32_MAX, 1024}, {1024} },
      260 +            {{0, UINT32_MAX, 1024}}, {1024} },
 261  261  
 262  262          { "_conn_req_min", MOD_PROTO_TCP,
 263  263              mod_set_uint32, mod_get_uint32,
 264      -            {1, 1024, 1}, {1} },
      264 +            {{1, 1024, 1}}, {1} },
 265  265  
 266  266          { "_conn_grace_period", MOD_PROTO_TCP,
 267  267              mod_set_uint32, mod_get_uint32,
 268      -            {0*MS, 20*SECONDS, 0*MS}, {0*MS} },
      268 +            {{0*MS, 20*SECONDS, 0*MS}}, {0*MS} },
 269  269  
 270  270          { "_cwnd_max", MOD_PROTO_TCP,
 271  271              mod_set_uint32, mod_get_uint32,
 272      -            {128, ULP_MAX_BUF, 1024*1024}, {1024*1024} },
      272 +            {{128, ULP_MAX_BUF, 1024*1024}}, {1024*1024} },
 273  273  
 274  274          { "_debug", MOD_PROTO_TCP,
 275  275              mod_set_uint32, mod_get_uint32,
 276      -            {0, 10, 0}, {0} },
      276 +            {{0, 10, 0}}, {0} },
 277  277  
 278  278          { "smallest_nonpriv_port", MOD_PROTO_TCP,
 279  279              mod_set_uint32, mod_get_uint32,
 280      -            {1024, (32*1024), 1024}, {1024} },
      280 +            {{1024, (32*1024), 1024}}, {1024} },
 281  281  
 282  282          { "_ip_abort_cinterval", MOD_PROTO_TCP,
 283  283              mod_set_uint32, mod_get_uint32,
 284      -            {1*SECONDS, UINT32_MAX, 3*MINUTES}, {3*MINUTES} },
      284 +            {{1*SECONDS, UINT32_MAX, 3*MINUTES}}, {3*MINUTES} },
 285  285  
 286  286          { "_ip_abort_linterval", MOD_PROTO_TCP,
 287  287              mod_set_uint32, mod_get_uint32,
 288      -            {1*SECONDS, UINT32_MAX, 3*MINUTES}, {3*MINUTES} },
      288 +            {{1*SECONDS, UINT32_MAX, 3*MINUTES}}, {3*MINUTES} },
 289  289  
 290  290          /* tunable - 10 */
 291  291          { "_ip_abort_interval", MOD_PROTO_TCP,
 292  292              mod_set_uint32, mod_get_uint32,
 293      -            {500*MS, UINT32_MAX, 5*MINUTES}, {5*MINUTES} },
      293 +            {{500*MS, UINT32_MAX, 5*MINUTES}}, {5*MINUTES} },
 294  294  
 295  295          { "_ip_notify_cinterval", MOD_PROTO_TCP,
 296  296              mod_set_uint32, mod_get_uint32,
 297      -            {1*SECONDS, UINT32_MAX, 10*SECONDS},
      297 +            {{1*SECONDS, UINT32_MAX, 10*SECONDS}},
 298  298              {10*SECONDS} },
 299  299  
 300  300          { "_ip_notify_interval", MOD_PROTO_TCP,
 301  301              mod_set_uint32, mod_get_uint32,
 302      -            {500*MS, UINT32_MAX, 10*SECONDS}, {10*SECONDS} },
      302 +            {{500*MS, UINT32_MAX, 10*SECONDS}}, {10*SECONDS} },
 303  303  
 304  304          { "_ipv4_ttl", MOD_PROTO_TCP,
 305  305              mod_set_uint32, mod_get_uint32,
 306      -            {1, 255, 64}, {64} },
      306 +            {{1, 255, 64}}, {64} },
 307  307  
 308  308          { "_keepalive_interval", MOD_PROTO_TCP,
 309  309              mod_set_uint32, mod_get_uint32,
 310      -            {1*SECONDS, 10*DAYS, 2*HOURS}, {2*HOURS} },
      310 +            {{1*SECONDS, 10*DAYS, 2*HOURS}}, {2*HOURS} },
 311  311  
 312  312          { "_maxpsz_multiplier", MOD_PROTO_TCP,
 313  313              mod_set_uint32, mod_get_uint32,
 314      -            {0, 100, 10}, {10} },
      314 +            {{0, 100, 10}}, {10} },
 315  315  
 316  316          { "_mss_def_ipv4", MOD_PROTO_TCP,
 317  317              mod_set_uint32, mod_get_uint32,
 318      -            {1, TCP_MSS_MAX_IPV4, 536}, {536} },
      318 +            {{1, TCP_MSS_MAX_IPV4, 536}}, {536} },
 319  319  
 320  320          { "_mss_max_ipv4", MOD_PROTO_TCP,
 321  321              mod_set_uint32, mod_get_uint32,
 322      -            {1, TCP_MSS_MAX_IPV4, TCP_MSS_MAX_IPV4},
      322 +            {{1, TCP_MSS_MAX_IPV4, TCP_MSS_MAX_IPV4}},
 323  323              {TCP_MSS_MAX_IPV4} },
 324  324  
 325  325          { "_mss_min", MOD_PROTO_TCP,
 326  326              mod_set_uint32, mod_get_uint32,
 327      -            {1, TCP_MSS_MAX, 108}, {108} },
      327 +            {{1, TCP_MSS_MAX, 108}}, {108} },
 328  328  
 329  329          { "_naglim_def", MOD_PROTO_TCP,
 330  330              mod_set_uint32, mod_get_uint32,
 331      -            {1, (64*1024)-1, (4*1024)-1}, {(4*1024)-1} },
      331 +            {{1, (64*1024)-1, (4*1024)-1}}, {(4*1024)-1} },
 332  332  
 333  333          /* tunable - 20 */
 334  334          { "_rexmit_interval_initial", MOD_PROTO_TCP,
 335  335              mod_set_uint32, mod_get_uint32,
 336      -            {1*MS, 20*SECONDS, 1*SECONDS}, {1*SECONDS} },
      336 +            {{1*MS, 20*SECONDS, 1*SECONDS}}, {1*SECONDS} },
 337  337  
 338  338          { "_rexmit_interval_max", MOD_PROTO_TCP,
 339  339              mod_set_uint32, mod_get_uint32,
 340      -            {1*MS, 2*HOURS, 60*SECONDS}, {60*SECONDS} },
      340 +            {{1*MS, 2*HOURS, 60*SECONDS}}, {60*SECONDS} },
 341  341  
 342  342          { "_rexmit_interval_min", MOD_PROTO_TCP,
 343  343              mod_set_uint32, mod_get_uint32,
 344      -            {1*MS, 2*HOURS, 400*MS}, {400*MS} },
      344 +            {{1*MS, 2*HOURS, 400*MS}}, {400*MS} },
 345  345  
 346  346          { "_deferred_ack_interval", MOD_PROTO_TCP,
 347  347              mod_set_uint32, mod_get_uint32,
 348      -            {1*MS, 1*MINUTES, 100*MS}, {100*MS} },
      348 +            {{1*MS, 1*MINUTES, 100*MS}}, {100*MS} },
 349  349  
 350  350          { "_snd_lowat_fraction", MOD_PROTO_TCP,
 351  351              mod_set_uint32, mod_get_uint32,
 352      -            {0, 16, 10}, {10} },
      352 +            {{0, 16, 10}}, {10} },
 353  353  
 354  354          { "_dupack_fast_retransmit", MOD_PROTO_TCP,
 355  355              mod_set_uint32, mod_get_uint32,
 356      -            {1, 10000, 3}, {3} },
      356 +            {{1, 10000, 3}}, {3} },
 357  357  
 358  358          { "_ignore_path_mtu", MOD_PROTO_TCP,
 359  359              mod_set_boolean, mod_get_boolean,
 360      -            {B_FALSE}, {B_FALSE} },
      360 +            {.mpi_bval = B_FALSE}, {B_FALSE} },
 361  361  
 362  362          { "smallest_anon_port", MOD_PROTO_TCP,
 363  363              tcp_smallest_anon_set, mod_get_uint32,
 364      -            {1024, ULP_MAX_PORT, 32*1024}, {32*1024} },
      364 +            {{1024, ULP_MAX_PORT, 32*1024}}, {32*1024} },
 365  365  
 366  366          { "largest_anon_port", MOD_PROTO_TCP,
 367  367              tcp_largest_anon_set, mod_get_uint32,
 368      -            {1024, ULP_MAX_PORT, ULP_MAX_PORT},
      368 +            {{1024, ULP_MAX_PORT, ULP_MAX_PORT}},
 369  369              {ULP_MAX_PORT} },
 370  370  
 371  371          { "send_buf", MOD_PROTO_TCP,
 372  372              tcp_set_buf_prop, tcp_get_buf_prop,
 373      -            {TCP_XMIT_LOWATER, ULP_MAX_BUF, TCP_XMIT_HIWATER},
      373 +            {{TCP_XMIT_LOWATER, ULP_MAX_BUF, TCP_XMIT_HIWATER}},
 374  374              {TCP_XMIT_HIWATER} },
 375  375  
 376  376          /* tunable - 30 */
 377  377          { "_xmit_lowat", MOD_PROTO_TCP,
 378  378              mod_set_uint32, mod_get_uint32,
 379      -            {TCP_XMIT_LOWATER, ULP_MAX_BUF, TCP_XMIT_LOWATER},
      379 +            {{TCP_XMIT_LOWATER, ULP_MAX_BUF, TCP_XMIT_LOWATER}},
 380  380              {TCP_XMIT_LOWATER} },
 381  381  
 382  382          { "recv_buf", MOD_PROTO_TCP,
 383  383              tcp_set_buf_prop, tcp_get_buf_prop,
 384      -            {TCP_RECV_LOWATER, ULP_MAX_BUF, TCP_RECV_HIWATER},
      384 +            {{TCP_RECV_LOWATER, ULP_MAX_BUF, TCP_RECV_HIWATER}},
 385  385              {TCP_RECV_HIWATER} },
 386  386  
 387  387          { "_recv_hiwat_minmss", MOD_PROTO_TCP,
 388  388              mod_set_uint32, mod_get_uint32,
 389      -            {1, 65536, 4}, {4} },
      389 +            {{1, 65536, 4}}, {4} },
 390  390  
 391  391          { "_fin_wait_2_flush_interval", MOD_PROTO_TCP,
 392  392              mod_set_uint32, mod_get_uint32,
 393      -            {1*SECONDS, 2*HOURS, 60*SECONDS},
      393 +            {{1*SECONDS, 2*HOURS, 60*SECONDS}},
 394  394              {60*SECONDS} },
 395  395  
 396  396          { "max_buf", MOD_PROTO_TCP,
 397  397              mod_set_uint32, mod_get_uint32,
 398      -            {8192, ULP_MAX_BUF, 1024*1024}, {1024*1024} },
      398 +            {{8192, ULP_MAX_BUF, 1024*1024}}, {1024*1024} },
 399  399  
 400  400          { "_strong_iss", MOD_PROTO_TCP,
 401  401              mod_set_uint32, mod_get_uint32,
 402      -            {0, 2, 2}, {2} },
      402 +            {{0, 2, 2}}, {2} },
 403  403  
 404  404          { "_rtt_updates", MOD_PROTO_TCP,
 405  405              mod_set_uint32, mod_get_uint32,
 406      -            {0, 65536, 20}, {20} },
      406 +            {{0, 65536, 20}}, {20} },
 407  407  
 408  408          { "_wscale_always", MOD_PROTO_TCP,
 409  409              mod_set_boolean, mod_get_boolean,
 410      -            {B_TRUE}, {B_TRUE} },
      410 +            {.mpi_bval = B_TRUE}, {B_TRUE} },
 411  411  
 412  412          { "_tstamp_always", MOD_PROTO_TCP,
 413  413              mod_set_boolean, mod_get_boolean,
 414      -            {B_FALSE}, {B_FALSE} },
      414 +            {.mpi_bval = B_FALSE}, {B_FALSE} },
 415  415  
 416  416          { "_tstamp_if_wscale", MOD_PROTO_TCP,
 417  417              mod_set_boolean, mod_get_boolean,
 418      -            {B_TRUE}, {B_TRUE} },
      418 +            {.mpi_bval = B_TRUE}, {B_TRUE} },
 419  419  
 420  420          /* tunable - 40 */
 421  421          { "_rexmit_interval_extra", MOD_PROTO_TCP,
 422  422              mod_set_uint32, mod_get_uint32,
 423      -            {0*MS, 2*HOURS, 0*MS}, {0*MS} },
      423 +            {{0*MS, 2*HOURS, 0*MS}}, {0*MS} },
 424  424  
 425  425          { "_deferred_acks_max", MOD_PROTO_TCP,
 426  426              mod_set_uint32, mod_get_uint32,
 427      -            {0, 16, 2}, {2} },
      427 +            {{0, 16, 2}}, {2} },
 428  428  
 429  429          { "_slow_start_after_idle", MOD_PROTO_TCP,
 430  430              mod_set_uint32, mod_get_uint32,
 431      -            {0, 16384, 0}, {0} },
      431 +            {{0, 16384, 0}}, {0} },
 432  432  
 433  433          { "_slow_start_initial", MOD_PROTO_TCP,
 434  434              mod_set_uint32, mod_get_uint32,
 435      -            {0, 16, 0}, {0} },
      435 +            {{0, 16, 0}}, {0} },
 436  436  
 437  437          { "sack", MOD_PROTO_TCP,
 438  438              mod_set_uint32, mod_get_uint32,
 439      -            {0, 2, 2}, {2} },
      439 +            {{0, 2, 2}}, {2} },
 440  440  
 441  441          { "_ipv6_hoplimit", MOD_PROTO_TCP,
 442  442              mod_set_uint32, mod_get_uint32,
 443      -            {0, IPV6_MAX_HOPS, IPV6_DEFAULT_HOPS},
      443 +            {{0, IPV6_MAX_HOPS, IPV6_DEFAULT_HOPS}},
 444  444              {IPV6_DEFAULT_HOPS} },
 445  445  
 446  446          { "_mss_def_ipv6", MOD_PROTO_TCP,
 447  447              mod_set_uint32, mod_get_uint32,
 448      -            {1, TCP_MSS_MAX_IPV6, 1220}, {1220} },
      448 +            {{1, TCP_MSS_MAX_IPV6, 1220}}, {1220} },
 449  449  
 450  450          { "_mss_max_ipv6", MOD_PROTO_TCP,
 451  451              mod_set_uint32, mod_get_uint32,
 452      -            {1, TCP_MSS_MAX_IPV6, TCP_MSS_MAX_IPV6},
      452 +            {{1, TCP_MSS_MAX_IPV6, TCP_MSS_MAX_IPV6}},
 453  453              {TCP_MSS_MAX_IPV6} },
 454  454  
 455  455          { "_rev_src_routes", MOD_PROTO_TCP,
 456  456              mod_set_boolean, mod_get_boolean,
 457      -            {B_FALSE}, {B_FALSE} },
      457 +            {.mpi_bval = B_FALSE}, {B_FALSE} },
 458  458  
 459  459          { "_local_dack_interval", MOD_PROTO_TCP,
 460  460              mod_set_uint32, mod_get_uint32,
 461      -            {10*MS, 500*MS, 50*MS}, {50*MS} },
      461 +            {{10*MS, 500*MS, 50*MS}}, {50*MS} },
 462  462  
 463  463          /* tunable - 50 */
 464  464          { "_local_dacks_max", MOD_PROTO_TCP,
 465  465              mod_set_uint32, mod_get_uint32,
 466      -            {0, 16, 8}, {8} },
      466 +            {{0, 16, 8}}, {8} },
 467  467  
 468  468          { "ecn", MOD_PROTO_TCP,
 469  469              mod_set_uint32, mod_get_uint32,
 470      -            {0, 2, 1}, {1} },
      470 +            {{0, 2, 1}}, {1} },
 471  471  
 472  472          { "_rst_sent_rate_enabled", MOD_PROTO_TCP,
 473  473              mod_set_boolean, mod_get_boolean,
 474      -            {B_TRUE}, {B_TRUE} },
      474 +            {.mpi_bval = B_TRUE}, {B_TRUE} },
 475  475  
 476  476          { "_rst_sent_rate", MOD_PROTO_TCP,
 477  477              mod_set_uint32, mod_get_uint32,
 478      -            {0, UINT32_MAX, 40}, {40} },
      478 +            {{0, UINT32_MAX, 40}}, {40} },
 479  479  
 480  480          { "_push_timer_interval", MOD_PROTO_TCP,
 481  481              mod_set_uint32, mod_get_uint32,
 482      -            {0, 100*MS, 50*MS}, {50*MS} },
      482 +            {{0, 100*MS, 50*MS}}, {50*MS} },
 483  483  
 484  484          { "_use_smss_as_mss_opt", MOD_PROTO_TCP,
 485  485              mod_set_boolean, mod_get_boolean,
 486      -            {B_FALSE}, {B_FALSE} },
      486 +            {.mpi_bval = B_FALSE}, {B_FALSE} },
 487  487  
 488  488          { "_keepalive_abort_interval", MOD_PROTO_TCP,
 489  489              mod_set_uint32, mod_get_uint32,
 490      -            {0, UINT32_MAX, 8*MINUTES}, {8*MINUTES} },
      490 +            {{0, UINT32_MAX, 8*MINUTES}}, {8*MINUTES} },
 491  491  
 492  492          /*
 493  493           * tcp_wroff_xtra is the extra space in front of TCP/IP header for link
 494  494           * layer header.  It has to be a multiple of 8.
 495  495           */
 496  496          { "_wroff_xtra", MOD_PROTO_TCP,
 497  497              mod_set_aligned, mod_get_uint32,
 498      -            {0, 256, 32}, {32} },
      498 +            {{0, 256, 32}}, {32} },
 499  499  
 500  500          { "_dev_flow_ctl", MOD_PROTO_TCP,
 501  501              mod_set_boolean, mod_get_boolean,
 502      -            {B_FALSE}, {B_FALSE} },
      502 +            {.mpi_bval = B_FALSE}, {B_FALSE} },
 503  503  
 504  504          { "_reass_timeout", MOD_PROTO_TCP,
 505  505              mod_set_uint32, mod_get_uint32,
 506      -            {0, UINT32_MAX, 100*SECONDS}, {100*SECONDS} },
      506 +            {{0, UINT32_MAX, 100*SECONDS}}, {100*SECONDS} },
 507  507  
 508  508          /* tunable - 60 */
 509  509          { "extra_priv_ports", MOD_PROTO_TCP,
 510  510              mod_set_extra_privports, mod_get_extra_privports,
 511      -            {1, ULP_MAX_PORT, 0}, {0} },
      511 +            {{1, ULP_MAX_PORT, 0}}, {0} },
 512  512  
 513  513          { "_1948_phrase", MOD_PROTO_TCP,
 514      -            tcp_set_1948phrase, NULL, {0}, {0} },
      514 +            tcp_set_1948phrase, NULL, {{0,0,0}}, {0} },
 515  515  
 516  516          { "_listener_limit_conf", MOD_PROTO_TCP,
 517      -            NULL, tcp_listener_conf_get, {0}, {0} },
      517 +            NULL, tcp_listener_conf_get, {{0,0,0}}, {0} },
 518  518  
 519  519          { "_listener_limit_conf_add", MOD_PROTO_TCP,
 520      -            tcp_listener_conf_add, NULL, {0}, {0} },
      520 +            tcp_listener_conf_add, NULL, {{0,0,0}}, {0} },
 521  521  
 522  522          { "_listener_limit_conf_del", MOD_PROTO_TCP,
 523      -            tcp_listener_conf_del, NULL, {0}, {0} },
      523 +            tcp_listener_conf_del, NULL, {{0,0,0}}, {0} },
 524  524  
 525  525          { "_iss_incr", MOD_PROTO_TCP,
 526  526              mod_set_uint32, mod_get_uint32,
 527      -            {1, ISS_INCR, ISS_INCR},
      527 +            {{1, ISS_INCR, ISS_INCR}},
 528  528              {ISS_INCR} },
 529  529  
 530      -        { "?", MOD_PROTO_TCP, NULL, mod_get_allprop, {0}, {0} },
      530 +        { "?", MOD_PROTO_TCP, NULL, mod_get_allprop, {{0,0,0}}, {0} },
 531  531  
 532      -        { NULL, 0, NULL, NULL, {0}, {0} }
      532 +        { NULL, 0, NULL, NULL, {{0,0,0}}, {0} }
 533  533  };
 534  534  
 535  535  int tcp_propinfo_count = A_CNT(tcp_propinfo_tbl);
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX