From owner-svn-src-head@freebsd.org Sun Mar 15 00:49:08 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id C47FA268C7A; Sun, 15 Mar 2020 00:49:08 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48g15v1Wbnz4KWM; Sun, 15 Mar 2020 00:49:07 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id EA4F62776F; Sun, 15 Mar 2020 00:49:06 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02F0n6d6076617; Sun, 15 Mar 2020 00:49:06 GMT (envelope-from pfg@FreeBSD.org) Received: (from pfg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02F0n67t076614; Sun, 15 Mar 2020 00:49:06 GMT (envelope-from pfg@FreeBSD.org) Message-Id: <202003150049.02F0n67t076614@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pfg set sender to pfg@FreeBSD.org using -f From: "Pedro F. Giffuni" Date: Sun, 15 Mar 2020 00:49:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359005 - head/usr.bin/calendar/calendars X-SVN-Group: head X-SVN-Commit-Author: pfg X-SVN-Commit-Paths: head/usr.bin/calendar/calendars X-SVN-Commit-Revision: 359005 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Mar 2020 00:49:08 -0000 Author: pfg Date: Sun Mar 15 00:49:06 2020 New Revision: 359005 URL: https://svnweb.freebsd.org/changeset/base/359005 Log: calendar(1): Updates and corrections for some calendar files. These have an educational value and are, no doubt, an integral part of the fun behind running the BSDs. PR: 242909, 242918 MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D23581 Modified: head/usr.bin/calendar/calendars/calendar.birthday head/usr.bin/calendar/calendars/calendar.history head/usr.bin/calendar/calendars/calendar.music Modified: head/usr.bin/calendar/calendars/calendar.birthday ============================================================================== --- head/usr.bin/calendar/calendars/calendar.birthday Sat Mar 14 22:07:11 2020 (r359004) +++ head/usr.bin/calendar/calendars/calendar.birthday Sun Mar 15 00:49:06 2020 (r359005) @@ -5,7 +5,7 @@ */ #ifndef _calendar_birthday_ -#define _calendar_birthday_ +#define _calendar_birthday_ #undef unix 01/01 J.D. Salinger born, 1919 @@ -15,22 +15,26 @@ 01/04 Jakob Grimm born, 1785 01/04 Wilhelm Beer born, 1797, first astronomer to map Mars 01/05 DeWitt B. Brace born, 1859, inventor of spectrophotometer +01/06 Millard Fillmore's birthday (let's party!) +01/07 Nikola Tesla died in the Hotel New Yorker room 3327, 1943 01/10 Ethan Allen born, 1738 01/11 Alexander Hamilton born in Nevis, British West Indies, 1757? 01/12 "Long" John Baldry is born in London, 1941 -01/13 Horatio Alger born, 1834 +01/13 Horatio Alger born, 1832 01/13 Sophie Tucker born, 1884 01/13 Wilhelm Wien born, 1864, Nobel prize for blackbody radiation laws 01/14 Albert Schweitzer born, 1875 -01/15 Martin Luther King, Jr. born +01/15 Martin Luther King, Jr. born, 1929 01/17 Benjamin Franklin born in Boston, 1706 01/19 Edgar Allan Poe born in Boston, 1809 01/19 Robert Edward Lee born in Stratford Estate, Virginia, 1807 -01/20 George Burns born, 1898 +01/20 George Burns born, 1896 +01/20 Dr. Mendeleev died with a pen in his hand, 1907 01/21 Lenin died, 1924 01/21 Thomas Jonathan "Stonewall" Jackson born in Clarksburg, VA, 1824 01/22 Sir Francis Bacon born, 1561 01/23 Ernst Abbe born, 1840, formulated diffraction theory +01/23 Grigori Yefimovich Rasputin born, 1869 01/23 Humphrey Bogart born in New York City, 1899 01/23 John Hancock born, 1737 01/23 Joseph Hewes born, 1730 @@ -48,26 +52,28 @@ 02/06 King George VI of UK dies; his daughter becomes Elizabeth II, 1952 02/07 Sinclair Lewis born, 1885 02/08 Friedleib F. Runge born, 1795, father of paper chromatography +02/08 John von Neumann died, 1957 02/08 Jules Verne born in Nantes, France, 1828 02/09 George Hartmann born, 1489, designed astrolabes, timepieces, etc. 02/10 Charles Lamb born, 1775 02/10 William Allen White born, 1868 -02/11 Thos. Edison born, 1847 +02/11 Thomas Edison born, 1847 02/11 William Henry Fox Talbot (photographic pioneer) born, 1800 02/12 Abraham Lincoln born, 1809 02/12 Charles Darwin born in Shrewsbury, England, 1809 02/15 Galileo Galilei born in Pisa, Italy, 1564 02/15 Susan B. Anthony born, 1820 02/16 Pierre Bouguer born, 1698, founder of photometry -02/17 Federick Eugene Ives born, 1856, pioneer of halftone +02/17 Frederic Eugene Ives born, 1856, pioneer of halftone 02/17 Marion Anderson born, 1902 02/17 T. J. Watson, Sr. born, 1874 02/18 Ernst Mach born, 1838, philosopher & optics pioneer +02/18 Michelangelo Buonarroti dies in Rome, Italy, 1564 02/19 Nicolas Copernicus born in Thorn, Poland, 1473 -02/20 Ludwig Boltzmann born, 1838, atomic physics pioneer +02/20 Ludwig Boltzmann born, 1844, atomic physics pioneer 02/21 Alexis De Rochon born, 1838, developed the spyglass 02/22 George Washington born, 1732 -02/22 Pierre Jules Cesar Janssen born, 1838, found hydrogen in the sun +02/22 Pierre Jules Cesar Janssen born, 1824, found hydrogen in the sun 02/23 W.E.B. DuBois born, 1868 02/24 Winslow Homer born, 1836 02/24 Steve Jobs born, 1955 @@ -81,30 +87,41 @@ 03/02 Dr. Seuss born, 1904 03/04 Casimir Pulaski born, 1747 03/05 John Belushi dies in Los Angeles, 1982 +03/05 Joseph Stalin died in Moscow, 1953 +03/06 Michelangelo Buonarroti born in Caprese, Italy, 1475 +03/07 Aristotle died, 322BC 03/07 Sir John Frederick William Herschel born, 1792, astronomer 03/08 Alvan Clark born, 1804, astronomer & lens manufacturer 03/08 Howard Aiken born, 1900 03/11 Robert Treat Paine born, 1737 03/11 Vannevar Bush born, 1890 +03/11 Douglas Adams born in Cambridge, England, 1952 03/12 Gustav Robert Kirchhoff born, 1824, physicist +03/12 Terry Pratchett (Sir) dies, 2015, author 03/14 Albert Einstein born, 1879 03/14 Casey Jones born, 1864 03/14 Giovanni Virginia Schiaparelli born, 1835, astronomer; named Mars "canals" 03/14 Jean Baptiste Joseph Fourier born, 1768, mathematician & physicist +03/14 Karl Marx died, 1883 03/15 Andrew "Old Hickory" Jackson, 7th President of the United States, born in Waxhaw, South Carolina, 1767 03/15 J.J. Robert's Birthday in Liberia 03/16 George Clymer born, 1739 03/16 James Madison, 4th President of the United States, born in King George County, Virginia, 1751 +03/19 Arthur C. Clarke died in Colombo, Sri Lanka, 2008 03/21 NetBSD project born, 1993 +03/23 Pierre Simon de Laplace born, 1749, mathematician & astronomer 03/24 Harry Houdini born, 1874 03/26 Benjamin Thompson born, 1753, Count Rumford; physicist 03/26 David Packard died, 1996; age of 83 +03/27 Maurits Cornelis Escher died, 1972 +03/27 Stanislaw Lem died, 2006 03/27 Wilhelm Conrad Roentgen born, 1845, discoverer of X-rays 03/28 Pierre Simon de Laplace born, 1749, mathematician & astronomer 03/30 Francisco Jose de Goya born, 1746 +03/30 Queen Elizabeth, the Queen Mother, died at the age of 101, 2002 03/30 Sean O'Casey born, 1880 03/30 Vincent Van Gogh born, 1853 03/31 Rene Descartes born, 1596, mathematician & philosopher @@ -123,11 +140,17 @@ 04/14 Christiaan Huygens born, 1629, physicist & astronomer; discovered Saturn's rings 04/15 Leonardo da Vinci born, 1452 +04/15 Leonhard Euler born in Basel, 1707 04/16 Charles (Charlie) Chaplin (Sir) born in London, 1889 +04/20 Adolf Hitler born, 1889 04/22 Kant born, 1724 +04/22 Lenin born, the best friend of all the children, 1870 +04/23 William Shakespeare died, 1616 +04/26 William Shakespeare baptised, 1564 04/27 Louis Victor de Broglie born, 1774, physicist 04/28 James Monroe, 5th President of the United States, born in Westmoreland County, Viriginia, 1758 +04/28 Terry Pratchett (Sir) born, 1948, author 04/29 Jules Henri Poincare born, 1854, founder of topology 04/29 William Randolph Hearst born in San Francisco, 1863 04/30 Karl Friedrich Gauss born, 1777, mathematician & astronomer @@ -136,6 +159,7 @@ 05/02 Dr. Benjamin Spock born, 1903 05/04 Alice Liddell born, 1852, Alice's Adventures in Wonderland & Through the Looking-Glass +05/05 Karl Marx born, 1818 05/09 Pinza died, 1957 05/10 Fred Astaire (Frederick Austerlitz) born in Omaha, Nebraska, 1899 05/11 Johnny Appleseed born, 1768 @@ -153,7 +177,7 @@ 05/29 Patrick Henry born, 1736 05/30 Mel (Melvin Jerome) Blanc born in San Francisco, 1908 06/01 Brigham Young born, 1801 -06/01 Marilyn Monroe born, 1928 +06/01 Marilyn Monroe born, 1926 06/02 Edward Elgar (Sir) born in Worcester, England, 1857 06/03 Henry James born, 1811 06/07 (Eugene Henri) Paul Gaugin born, 1848 @@ -167,7 +191,7 @@ 06/19 FreeBSD project born, 1993 06/22 Carl Hubbell born, 1903 06/22 Meryl Streep born in Summit, New Jersey, 1949 -06/22 Konrad Zuse born in Berlin, 1919 +06/22 Konrad Zuse born in Berlin, 1910 06/23 Alan Mathison Turing born, 1912 06/25 Eric Arthur Blair (a.k.a. George Orwell) born, 1903 06/27 Helen Keller born, 1880 @@ -179,24 +203,30 @@ 07/07 P.T. Barnum dies, 1891 07/08 Count Ferdinand von Zeppelin born, 1838 07/10 John Calvin born, 1509 +07/10 Nikola Tesla born, 1856 07/11 John Quincy Adams, 6th President of the United States, born in Braintree, Massachusetts, 1767 07/12 Henry David Thoreau born, 1817 07/15 Clement Clarke Moore born, 1779, author of "A Visit from Saint Nicholas" 07/18 Brian Auger is born in London, 1939 +07/20 Alexander the Great born, 356 BC +07/20 Bruce Lee died in Hong Kong, 1973 +07/25 Robert Morris is born in Boston, 1932 07/25 Steve Goodman is born in Chicago, 1948 07/29 Mussolini born, 1883 07/30 Emily Bronte born, 1818 07/30 Henry Ford born, 1863 08/01 Herman Melville born, 1819 08/03 Lenny Bruce dies of a morphine overdose, 1966 +08/05 Friedrich Engels died, 1895 +08/06 Edsger Wybe Dijkstra died after a long struggle with cancer, 2002 08/06 Jonathan B. Postel is born in Altadena, California, 1943 08/08 Dustin Hoffman born in Los Angeles, 1937 08/12 Thomas Mann's Death, 1955 08/13 Alfred Hitchcock born, 1899 08/13 Annie Oakley born, 1860 -08/13 Fidel Castro born, 1927 +08/13 Fidel Castro born, 1926 08/17 Mae West born, 1892 08/18 Meriwether Lewis born, 1774 08/20 Leon Trotsky assassinated, 1940 @@ -207,6 +237,7 @@ 08/27 Lyndon B. Johnson born, 1908 08/29 Oliver Wendell Holmes born, 1809, physician & father of the jurist 08/30 John W. Mauchly born, 1907 +09/02 J.R.R. Tolkien died, 1973 09/05 King Louis XIV of France born, 1638 09/05 Raquel Welch born, 1942 09/06 Word is received that Perry has reached the North Pole and died, 1909 @@ -217,11 +248,17 @@ 09/09 Chinese Communist Party Chairman Mao Tse-Tung dies at age 82, 1976 09/09 Dennis MacAlistair Ritchie, creator of C, born, 1941 09/12 Jesse Owens born, 1913 +09/12 Stanislaw Lem born in Lwow, Poland, 1921 09/13 Walter Reed born, 1851 09/15 Agatha Christie born in Torquay, England, 1890 09/16 Allen Funt born in Brooklyn, NY, 1914 +09/17 Ken Kesey born in La Junta, CO, 1935 +09/18 Konstantin Eduardovich Tsiolkovsky born, 1857, father of rocket flight 09/18 Greta Garbo born, 1905 09/18 Jimi Hendrix dies from an overdose, 1970 +09/18 Leonhard Euler died in St. Petersburg, 1783 +09/19 President Garfield dies of wounds in Elberon, N.J., 1881 +09/19 Konstantin Eduardovich Tsiolkovsky died, Russian SFSR, 1935 09/20 Upton (Beall) Sinclair born, 1878 09/21 H.G. (Herbert George) Wells born in Bromley, England, 1866 09/21 Louis Joliet born, 1645 @@ -264,12 +301,14 @@ Massachusetts 1735. 10/31 Chiang Kai-Shek born, 1887 10/31 Dale Evans born, 1912 +11/01 Joseph Stalin's burial, 1961 11/02 Daniel Boone born near Reading, PA, 1734 11/04 King William III of Orange born, 1650 11/05 Roy Rogers born, 1912 11/09 Carl Sagan born, 1934 11/10 Martin Luther born in Eisleben, Germany, 1483 11/10 Soviet President Leonid Brezhnev dies at age 75, 1982 +11/11 Fyodor Mikhailovich Dostoevsky born in Moscow, Russia, 1821 11/11 Kurt Vonnegut, Jr, born in Indianapolis, 1922 11/13 Robert Louis Stevenson born, 1850 11/13 St. Augustine of Hippo born in Numidia, Algeria, 354 @@ -278,9 +317,12 @@ 11/20 Robert Francis Kennedy (RFK) born in Boston, Massachusetts, 1925 11/26 Charles Schulz born in Minneapolis, 1922 11/26 Norbert Wiener born in Columbia, Missouri, 1894 +11/27 Bruce Lee born in San Francisco, 1940 +11/28 Friedrich Engels born, 1820 +11/28 Joe Ossanna died, 1977 11/29 John Mayall is born in Cheshire, England, 1933 11/30 Cleopatra died, 30 BC -11/30 Mark Twain (Samuel Clemmens) born in Florida, Missouri, 1835 +11/30 Mark Twain (Samuel Clemens) born in Florida, Missouri, 1835 12/01 Woody Allen (Allen Stuart Konigsberg) born in Brooklyn, NY, 1935 12/04 Tommy Bolin dies of a heroin overdose in Miami, 1976 12/05 Martin Van Buren, 8th President of the United States, born in @@ -288,17 +330,21 @@ 12/05 Walt (Walter Elias) Disney born in Chicago, 1901 12/08 Horace (Quintus Horatius Flaccus) born in Venosa (Italy), 65BC 12/08 James (Grover) Thurber born in Columbus, Ohio, 1894 -12/10 Emily Dickenson born, 1830 +12/10 Emily Dickinson born, 1830 12/12 E.G. Robinson born, 1893 12/14 George Washington dies, 1799 +12/16 Arthur C. Clarke born in Somerset, England, 1917 12/17 William Safire (Safir) born, 1929 12/18 Konrad Zuse died in Hünfeld, 1995 12/20 Carl Sagan died, 1996 12/21 Benjamin Disraeli born, 1804 12/22 Giacomo Puccini born, 1858 +12/22 Joseph Vissarionnovich Djugashvili (Stalin) born, 1879 +12/22 Samuel Beckett dies in Paris, 1989 12/23 Joseph Smith born, 1805 12/25 Isaac Newton (Sir) born in Grantham, England, 1642 12/26 Chas. Babbage born, 1791 12/28 John von Neumann born, 1903 +12/29 Grigori Yefimovich Rasputin assasinated, 1916 #endif /* !_calendar_birthday_ */ Modified: head/usr.bin/calendar/calendars/calendar.history ============================================================================== --- head/usr.bin/calendar/calendars/calendar.history Sat Mar 14 22:07:11 2020 (r359004) +++ head/usr.bin/calendar/calendars/calendar.history Sun Mar 15 00:49:06 2020 (r359005) @@ -5,18 +5,27 @@ */ #ifndef _calendar_history_ -#define _calendar_history_ +#define _calendar_history_ 01/01 Anniversary of the Triumph of the Revolution in Cuba 01/01 Castro expels Cuban President Batista, 1959 01/01 Churchill delivers his "Iron Curtain" speech, 1947 01/01 First Rose Bowl; Michigan 49 - Stanford 0, 1902 +01/02 Canada and the United States agree on a plan to preserve + Niagara Falls, 1929 +01/03 Benito Mussolini announces he is taking dictatorial powers + over Italy, 1925 +01/03 Margaret Thatcher becomes the longest-serving British + Prime Minister in the 20th Century, 1988 +01/04 Burma becomes independent from United Kingdom, 1948 01/04 Quadrantid meteor shower (look north) 01/05 -50 degrees F, Strawberry UT, 1913 01/05 The FCC hears the first demonstration of FM radio, 1940 01/05 Twelfth night -01/06 Millard Fillmore's birthday (let's party!) +01/06 Maria Montessori opens her first school in Rome, 1907 +01/07 First transatlantic telephone call, 1927 01/08 Battle of New Orleans +01/08 Monaco gains its independence, 1297 01/09 Plough Monday 01/10 First meeting of United Nations General Assembly in London, 1946 01/10 Thomas Paine's Common Sense published, 1776 @@ -26,12 +35,28 @@ 01/11 Prithvi Jayanti in Nepal 01/11 Surgeon General condemned cigarettes, 1964 01/11 The Whiskey-A-Go-Go opens on Sunset Boulevard in Los Angeles, 1963 +01/12 Batman the TV series debuts on ABC, 1966 +01/13 Mickey Mouse comic strip makes its first appearance, 1930 01/14 The first "Be-In" is held in Golden Gate Park, 1967 +01/15 Angola becomes an independent state, 1975 01/16 Prohibition begins, 1920 +01/16 The Medici family are made official bankers of the Papacy, 1412 +01/17 Captain James Cook becomes the first explorer to cross the + Antarctic Circle, 1773 01/18 Grey whale migration, California +01/18 The X-ray machine is exhibited for the first time, 1896 +01/19 The last Volkswagen Beetle made in Germany leaves VW's plant, 1978 01/20 St. Agnes Eve (Ah, bitter chill it was...) +01/21 First commercial flight with a Concorde, 1976 +01/22 British colonists reach New Zealand, 1840 +01/23 The Royal Exchange opens in London, 1571 +01/23 The Union of Utrecht forms a Protestant republic in + the Netherlands, 1579 01/24 Eskimo Pie patented by Christian Nelson, 1922 01/24 Gold discovered in California at Sutter's Mill, 1848 +01/24 Robert Baden-Powell begins the Boy Scout movement, 1908 +01/25 The British Parliament passes the Constitutional Act of 1791 and splits + the old province of Quebec into Upper and Lower Canada, 1791 01/26 Sydney, New South Wales settled, 1788 01/27 Grissom, White and Chaffe burned to death in Apollo 1, 1967 01/27 Vietnam War cease-fire signed, 1973 @@ -39,111 +64,207 @@ 01/28 Space Shuttle Challenger (51-L) explodes 74 seconds after liftoff killing Scobee, Smith, McNair, Resnick, Jarvis, Onizuka and McAuliffe, 1986 +01/28 The first locomotive runs from the Atlantic to the Pacific on the + Panama Railway, 1855 +01/29 Liliuokalani is proclaimed Queen of Hawaii, the last monarch of + Hawaii, 1891 01/30 Mohandas Gandhi assassinated in New Delhi by Hindu fanatic, 1948 01/30 Tet Offensive, 1968 01/31 "Ham" the chimpanzee soars into space aboard Mercury-Redstone 2, 1961 +01/31 Dmitry Mendeleev established optimal alcohol-water mixture ratio + in his PhD work on alcohol-water mixtures, 1865 01/31 Explorer I launched, 1958. Van Allen Belt discovered -01/31 Irving Langmuir, 1881, invented tungsten filament lamp +01/31 Irving Langmuir invented tungsten filament lamp, 1881 02/01 First TV soap: Secret Storm, 1954 02/01 Forces led by Khomeini take over Iran, 1979 02/01 Space Shuttle Columbia (STS-107) disintegrates 15 minutes before landing killing Husband, McCool, Chawla, Clark, Ramon, Brown, and Anderson, 2003 +02/02 Adolf Hitler dissolves the German Parliament, 1933 +02/03 The first commercial cheese factory is founded in Switzerland, 1815 02/04 Cybernet inaugurated, 1969 02/04 Patricia Hearst kidnapped by Symbionese Liberation Army, 1974 +02/05 Gamel Abdel Nasser is nominated to be the first president of + the United Arab Republic, 1958 +02/06 Signing of the Treaty of Waitangi, founding document of New Zealand, 1840 +02/07 The British Labour Party is formed, 1900 02/08 1963 Revolution Anniversary in Iraq 02/09 -51 degrees F, Vanderbilt MI, 1934 -02/12 US President Abraham Lincoln's real birthday +02/09 Gregory XV becomes Pope, the last Pope elected by acclamation, 1621 +02/10 New Delhi becomes the capital of India, 1931 +02/11 Norway's independence is proclaimed, marking the ultimate end of + the Kalmar Union, 1814 +02/12 China adopts the Gregorian calendar, 1912 02/12 Santa Barbara oil leak, 1969 +02/13 France tests its first atomic bomb in Algeria, 1960 02/14 Bombing of Dresden, 1945 02/15 Chicago Seven convicted, 1970 02/16 Nylon patented, 1937 02/16 Stephen Decatur burns US frigate in Tripoli, 1804 +02/17 The first ship passes through the Suez Canal, 1867 +02/18 Joseph Goebbels delivers the Sportpalast speech, 1943 02/18 Pluto discovered by Clyde Tombaugh, Lowell Observatory, AZ, 1930 +02/19 Serfdom is abolished in Russia, 1861 02/19 US Marines land on Iwo Jima, 1945 +02/20 FBI agent Robert Hanssen is arrested and charged with spying for Russia + for 15 years, 2001 02/20 John Glenn orbits the Earth 3 times, 1962 02/21 Battle of Verdun begins, 1916 1M casualties 02/21 First telephone directory, New Haven, Connecticut, 1878 02/21 Malcom X shot to death in Harlem, 1965 +02/22 Start of the Czechoslovak Revolution, 1948 02/23 Lt. Calley confesses, implicates Cpt. Medina, 1971 02/24 Impeachment proceedings against Andrew Johnson begin, 1868 +02/25 The Democratic Republic of Georgia occupied by Bolshevist Russia, 1921 +02/26 Final radio broadcast of Dragnet, 1957 +02/27 The Lionheart crowned, 1189 02/28 The "French Connection" drug bust occurs in Marseilles, 1972 02/29 French and Indian raid on Deerfield MA, 1704 03/01 Sarah Goode, Sarah Osborne, and Tituba arrested for witchcraft in Salem, Massachusetts, 1692 +03/01 The city of Rio de Janeiro is founded, 1565 03/02 Blackthorn winds (New England) -03/04 First meeting of Congress, 1789, in N.Y.C. +03/02 Ho Chi Minh is elected the President of North Vietnam, 1946 +03/03 Bulgaria regains its independence from Ottoman Empire, 1878 +03/04 Emile Berliner invents the microphone, 1877 +03/04 First meeting of Congress in N.Y.C., 1789 +03/05 Samuel Colt makes the first production-model revolver, 1836 +03/06 The aspirin is registered as a trademark of Bayer, 1899 +03/07 Mass protest outside the National Assembly of Kuwait building for + women's voting rights in Kuwait, 2005 +03/08 The first case of Spanish flu occurs, killing 50 million to 100 million + people worldwide, 1918 +03/09 The Barbie doll debuts, 1959 +03/10 Republic of Cote d'Ivoire becomes a colony of France, 1893 +03/11 Ceasefire declared in the war between Iran and Irak, 1988 +03/12 The first bottles of Coca Cola were sold, 1894 03/13 "Striptease" introduced, Paris, 1894 03/14 Teddy Roosevelt excludes Japanese laborers from continental US, 1907 -03/15 Day of the 1848 revolution in Hungary +03/14 The kingdom of Cyprus is sold by the ruling Queen to Venice, 1489 03/15 Buzzards return to Hinckley OH +03/15 Day of the 1848 revolution in Hungary 03/15 France assumes protectorate over Vietnam, 1874 03/15 Watts, Los Angeles, riots kill two, injure 25, 1966 03/15 Ides of March. Gaius Julius Caesar assassinated by senators, including adoptive son Marcus Junius Brutus Caepio, 44BC +03/15 Julius Caesar, Dictator of the Roman Republic, is stabbed to death by + several senators, 44BC +03/15 Watts, Los Angeles, riots kill two, injure 25, 1966 +03/16 Largest coordinated worldwide vigil against the Iraq War, 2003 03/16 MyLai Massacre; 300 non-combatant villagers killed by US infantrymen 03/16 Robert Goddard launches first liquid-fueled rocket, Auburn MA, 1926 +03/17 Invention of the rubber band, 1845 +03/17 Ukrainian Nationalist Republic declared, 1917 03/17 Vanguard I launched, 1958. Earth proved pear-shaped 03/18 Aleksei Leonov performs first spacewalk, 1965 +03/18 In the Pyramid of Cheops a 4.400 year old mummy is found, 1989 03/19 Swallows return to Capistrano 03/20 Radio Caroline, the original British pirate radio station, sinks, 1980 +03/21 Henry V becomes the king of England, 1413 +03/22 First motion picture displayed by Auguste and Louis Lumière, 1895 +03/22 World Day for Water +03/23 The first Islamic republic in the world is Pakistan, 1956 03/24 Construction of New York subway system begins, 1900 +03/25 The first Bed-In for Peace by John Lennon and Yoko Ono, 1969 03/25 Triangle Shirt Waist Fire, 1911 03/26 Popeye statue unveiled, Crystal City TX Spinach Festival, 1937 +03/26 The driving test is introduced, in the United Kingdom, 1934 03/27 Khrushchev becomes Premier of Soviet Union, 1958 03/28 Three Mile Island releases radioactive gas, 1979 03/29 Swedish settled Christiana (Wilmington) DE, 1638 +03/29 The Republic of Ireland bans smoking in all work places, 2004 03/30 Alaska purchased from Russia for $7.2 million, 1867 03/30 Five rings around Uranus discovered, 1977 03/30 Pencil with eraser patented, 1858 +03/31 The Eiffel Tower is inaugurated, 1889 04/01 People of superb intelligence, savoir-faire, etc. born this day. +04/02 Haile Selassie is proclaimed emperor of Ethiopia, 1930 +04/03 First publication of the newspaper La Gazzetta dello Sport, 1896 04/04 Martin Luther King assassinated in Memphis, Tennessee, 1968 -04/04 NATO Established, 1949 +04/04 NATO established, 1949 +04/05 Pocahontas marries English colonist John Rolfe in Virginia, 1614 04/06 Joseph Smith founds Mormon Church, 1830 04/07 Alewives run, Cape Cod 04/08 Matthew Flinders and Nicolas Baudin meet in Encounter Bay, 1802 +04/08 The Venus de Milo is found on the island of Melos, 1820 04/09 Lee surrenders to Grant at Appomattox Courthouse, 1865 +04/09 The first public exhibition of art opens in Paris, 1667 +04/10 The Belfast Agreement is signed, on Good Friday, 1998 +04/11 The Shogunate is abolished in Japan, 1868 04/12 Confederate troops fire first shots of Civil War at Ft Sumter, 1861 +04/12 Great Britain adopts the Union Jack as their national flag, 1606 04/12 Space Shuttle Columbia launched, 1981 04/12 Yuri Gagarin becomes the first man in space, 1961 04/13 Laotian New Year (3 days) in Laos 04/14 US President Abraham Lincoln shot in Ford's Theatre by John Wilkes Booth, 1865 04/14 Titanic hits iceberg and sinks, 1912 +04/15 Insulin first becomes generally available for use by diabetics, 1923 04/15 US President Abraham Lincoln dies, 1865 04/15 Ray Kroc opens first McDonalds in Des Plaines, IL, 1955 +04/16 Syria becomes an independent Republic, 1946 04/17 Bay of Pigs invasion crushed by Castro forces, 1961 04/18 Einstein's Death, 1955 04/18 First Laundromat opens, Fort Worth Texas, 1934 04/18 San Francisco earthquake, 1906 +04/18 The League of Nations is dissolved after 27 years, 1946 04/19 Landing of the "33" in Uruguay 04/19 Warsaw Ghetto uprising, 1943 +04/20 In Bulgaria, the April Uprising takes place, 1876 04/20 Supreme Court unanimously rules in favor of busing, 1971 04/21 Lyrid meteor shower +04/21 Rome is founded by Romulus and Remus, 753BC +04/22 Portuguese navigator Pedro Alvares Cabral becomes the first European to + sight Brazil, 1500 +04/22 The first Earth Day is celebrated, 1970 04/22 Vladimir Ilich Ulyanov, called Lenin, Russian political leader, born in Simbirsk, 1870 +04/23 Bavarian co-rulers Duke Wilhelm IV and Duke Ludwig X proclaimed the + weighty and consequential Bavarian Beer Purity Law + (later Reinheitsgebot), 1516 04/23 Hank Aaron hits his first home run, 1954 +04/24 The Greek enter Troy with the Trojan Horse, 1184BC +04/25 Integrated circuit patented by Robert Noyce, 1961 04/26 William Shakespeare baptized in Stratford-on-Avon, England, 1564, - birthdate unknown + birthdate less certain 04/27 Magellan killed in Philippines, 1521 +04/28 President of France, Charles de Gaulle resigns, 1969 04/29 Zipper patented by Gideon Sindback, 1913 +04/30 Adolf Hitler and Eva Braun commit suicide, 1945 05/01 Beltaine; Feast of the god Bel, sun god +05/01 Adam Weishaupt founded the Illuminati of Bavaria, 1776 +05/02 The first modern sighting of the Loch Ness monster is reported, 1933 05/03 Anti-war protest disrupts business in Washington, 1971 +05/03 Jamaica is spotted by Christopher Columbus, 1494 +05/04 Christopher Columbus sets foot on Jamaica, 1494 05/04 Four Kent State students are shot down by the National Guard, 1970 05/05 John Scopes arrested for teaching evolution, Dayton, TN, 1925 +05/05 Kublai Khan becomes ruler of the Mongol Empire, 1260 05/06 Hindenburg explodes and burns upon landing at Lakehurst, NJ, 1937 -05/07 Germany surrenders after WWII, 1945 +05/07 Germany surrenders after World War II, 1945 05/08 Beginning of ostrich mating season +05/08 Herbert Akroyd Stuart patented the first "diesel" engine, 1890 05/08 US institutes mining of Haiphong Harbor, 1972 05/09 94 degrees, New York, 1979 +05/09 The first parliament of Australia opens in Melbourne, 1901 05/10 Germany invades Low Countries, 1940 05/10 Nazi bookburning, 1933 +05/11 Thailand is no longer known as Siam, 1949 +05/12 Tunisia becomes a French protectorate, 1881 +05/13 Dutch statesman Johan van Oldenbarnevelt is executed in The Hague after + having been accused of treason, 1619 05/14 Beginning of Lewis and Clark Expedition, 1804 05/14 Nation of Israel proclaimed, 1948 05/15 Asylum for Inebriates founded, Binghamton NY, 1854 +05/15 The civil war in Finland ends, 1918 +05/16 Root beer invented by Charles Elmer Hires, 1866 05/17 24" rain in 11 hours, Pearl River, S. China, 1982 05/17 Six SLA members killed in televised gun fight, 1974 05/18 Battle of Las Piedras in Uruguay 05/18 Napoleon crowned Emperor, 1804 +05/19 The Legion d'Honneur is founded by Napoleon Bonaparte, 1802 +05/20 The first modern atlas issued by Abraham Ortelius, 1570 05/21 Battle of Iquique in Chile 05/21 US explodes first hydrogen bomb, 1956 +05/22 The transporting of British convicts to the New South Wales colony, + is abolished, 1840 05/22 US Civil War ends, 1865 05/23 Israeli raid into Argentina to capture Adolf Eichmann, 1960 05/23 Two Yetis sighted, Mt. Everest, 1953 @@ -152,19 +273,35 @@ 05/25 Oral Roberts sees 900 foot tall Jesus Christ, Tulsa OK, 1980 05/25 Successful test of the limelight in Purfleet, England, 1830 05/26 Congress sets first immigration quotas, 1924 +05/26 John Calvin and his followers are expelled from Geneva, 1538 05/27 Golden Gate Bridge opens, 1937 +05/27 The pop-up toaster patented by Charles Strite, 1919 +05/28 Alan Turing submits On Computable Numbers for publication, 1936 05/29 Edmund Hillary and Tenzing Norkay climb Mt. Everest, 1953 05/29 First food stamps issued, 1961 05/30 US Marines sent to Nicaragua, 1912 +05/30 Beginning of the civil war over Biafra, 1967 +05/31 Yom Kippur War comes to an end by the signing of a disengagement + agreement by Syria and Israel, 1974 +06/01 In a referendum the Dutch reject the European Constitution, 2005 +06/02 Denmark rejects the Maastricht Treaty in a close-call referendum, 1992 06/02 Native Americans "granted" citizenship, 1924 +06/03 Edward White becomes the first American to perform a "Space Walk", 1965 +06/03 Last Star Trek episode first aired ("Turnabout Intruder"), 1969 06/04 Roquefort cheese developed, 1070 06/05 Robert Kennedy assassinated, 1968 +06/05 Titus and his Roman legions breach the middle wall of Jerusalem, 70 06/05 US leaves the Gold Standard, 1933 06/06 First drive-in movie, 1933 06/06 Normandy landing, 1944 +06/07 The first act of civil disobedience by Gandhi, 1893 +06/08 The Canadian Parliament meets for the first time in Ottawa, 1866 +06/09 The Roman Emperor Nero commits suicide, 68 06/10 Death of Alexander the Great, 323 B.C. 06/10 Denver police tear gas Jethro Tull and 2000 fans at Red Rocks, 1971 06/11 Greeks seize Troy, 1184BC +06/12 Nelson Mandela is sentenced to life in prison, 1964 +06/13 Much of Vancouver, British Columbia, is devastated by a fire, 1886 06/13 Pioneer flies past Neptune, and therefore out of the Solar System 06/14 Sandpaper invented by I. Fischer, Jr., 1834 06/15 Ben Franklin's kite experiment, 1752 @@ -173,16 +310,21 @@ that all the hooves of a horse are off the ground during the gallop, 1878 06/16 "The Blues Brothers" premieres in Chicago, 1980 +06/16 Henry Ford launched the Ford Motor Company, 1903 06/17 China explodes its first Hydrogen bomb, 1967 06/17 Watergate Democratic National Committee break-in, 1972 +06/18 Winston Churchill delivers his "Finest Hour" speech, 1940 06/19 Julius and Ethel Rosenberg are executed in Sing-Sing prison, 1953 06/19 Lizzie Bordon acquitted, 1893 06/20 Victoria crowned, 1837 06/21 Berlin airlift begins, 1948 06/21 Sun rises over Heelstone at Stonehenge 06/22 Civil rights workers disappear in Mississippi, 1964 +06/22 The June Days Uprising in Paris begins, 1848 +06/23 Harriet, Darwin's turtle died at the age of 176 years, 2006 06/23 Slavery abolished in England, 1772 06/24 Senate repeals Gulf of Tonkin resolution, 1970 +06/24 The capital of Jamaica, Kingston, is founded, 1664 06/25 Custer's Last Stand at Little Big Horn, 1876 06/25 North Korea invades South Korea, 1950 06/26 Battle of Gettysburg, 1863 @@ -190,47 +332,83 @@ 06/26 Toothbrush invented, 1498 06/27 100 degrees, Fort Yukon, 1915 06/27 Bill Graham closes the Fillmore East, 1971 +06/27 The world's first ATM is installed in Enfield, London, 1967 +06/28 Archduke Franz Ferdinand of Austria assassinated in Sarajevo, + marking the beginning of World War I, 1914 06/28 Supreme Court decides in favor of Allan Bakke, 1978 -06/30 "That" explosion in Siberia, 1908 +06/28 World War I ended with the signing of the Treaty of Versailles, 1919 +06/29 The Seychelles gains independence from the United Kingdom, 1976 +06/30 "That" explosion in Siberia at 7:17 local time, 1908 +06/30 Albert Einstein published his theory of special relativity, 1905 06/30 China and Soviet Union announce split over ideology, 1960 07/01 Battle of Gettysburg begins, 1863 +07/01 Hong Kong becomes a special administrative region of the People's + Republic of China, 1997 +07/01 The first day on the Somme marked the beginning of the + Battle of the Somme, 1916 +07/01 Warsaw Pact officially dissolved, 1991 +07/02 Vermont abolishes slavery, as the first state, 1777 07/03 Dog days begin 07/04 Battles of Vicksburg and Gettysburg won by Union forces, 1863 07/04 Cloudy, 76 degrees, Philadelphia PA, 1776 07/04 New York abstains on Declaration of Independence vote, 1776 07/04 Thoreau enters woods, 1845 +07/05 Bikini demonstrated for the first time, 1946 07/06 First `talkie' (talking motion picture) premiere in New York, 1928 07/06 Lawrence of Arabia captures Aqaba, 1917 07/07 First radio broadcast of "Dragnet", 1949 07/07 Terrorists detonate four bombs on London public transport, 2005 +07/08 A UFO is believed to have crashed near Roswell, New Mexico, 1947 07/08 First public reading of the Declaration of Independence, 1776 07/08 Liberty Bell cracks while being rung at funeral of John Marshall, 1835 07/09 10-hour working day set by law, NH, 1847 +07/09 The African Union gets established, 2002 07/10 134 degrees in Death Valley, 1913 +07/10 Most of London gets burned down in a severe fire, 1212 +07/11 Mongolia gains independence from China, 1921 07/12 Minimum wages established: 40 cents/hour, 1933 07/13 Women first compete in Olympic games, 1908 +07/14 Storming of the Bastille by the citizens of Paris, 1789 +07/15 First item sold via Amazon.com, 1995 07/16 Detonation of the first atomic bomb at Alamagordo, NM, 1945 +07/16 End of the civil war in Rwanda, 1994 07/17 Disneyland opens, 1955 +07/18 "Mein Kampf" is published, 1925 07/18 Ty Cobb gets 4000th base hit, 1927 07/19 Five Massachusetts women executed for witchcraft, 1692 +07/19 France declares war on Prussia, marking the beginning of the + Franco-Prussian war, 1870 07/20 Armstrong and Aldrin land on moon, 1969 +07/20 Ford Motor Company ships their car, 1903 07/21 First Train Robbery, Jesse James gets $3000 near Adair, Iowa, 1873 07/21 Vietnam divided at 17th parallel, 1954 +07/22 Wiley Post becomes the first person to fly around the world, 1933 07/23 Ice cream cone introduced, St. Louis MO, 1904 07/24 Scopes Monkey Trial, 1925 +07/25 First test-tube baby born, 1978 +07/26 Potsdam Declaration signed, 1945 +07/27 The last Citroen 2CV made, 1990 +07/28 Potato introduced in Europe by Sir Thomas Harriot, 1586 +07/29 Inauguration of the Arc de Triomphe in Paris, 1836 07/30 "In God We Trust" made US motto, 1956 +07/30 Elvis Presley performs for the first time in public, 1954 +07/31 First U.S. patent issued, 1790 07/31 Harry S. Truman dedicates N.Y. Int'l Airport @ Idlewild Field, 1948, later JFK 08/01 Lughnasa; Feast of the god Lugh, a 30 day Celtic feast centers on this day +08/02 Hitler becomes the Fuehrer of Germany, 1934 08/03 Columbus sets sail for Cathay, 1492 08/03 USS Nautilus crosses under north polar ice cap, 1958 08/04 Axe murder of Andrew and Abbey Borden, 1892 08/04 Bombing of N. Vietnam begins, 1964 08/04 Britain declares war on Germany starting World War I, 1914 +08/05 Nelson Mandela is jailed, 1962 08/06 Atomic bomb dropped on Hiroshima, 1945 08/06 Caricom in Barbados 08/06 Cy Young pitches first game, 1890 +08/07 Jack the Ripper makes his first kill, 1888 +08/08 Atomic bomb dropped on Nagasaki, 1945 08/08 Montenegro declares war on Germany, 1914 08/08 Richard Nixon resigns the US presidency, 1974 08/08 The Great Train Robbery -- $7,368,000, 1963 @@ -240,23 +418,32 @@ 08/09 Atomic bomb dropped on Nagasaki, 1945 08/09 Singapore secedes from Malaysia, 1965 08/10 Chicago incorporated as a village of 300 people, 1833 +08/10 Major terrorist plot to destroy aircraft disrupted by + Scotland Yard, 2006 08/10 US and Panama agree to transfer the canal in the year 2000, 1977 08/11 Dog days end 08/11 France Ends War in Indochina, 1954 08/11 Perseid meteor shower (look north; three days) +08/12 Cleopatra commits suicide, 30BC 08/12 First test flight of Space Shuttle "Enterprise" from 747, 1977 08/12 Last US ground troops out of Vietnam, 1972 08/13 Berlin wall erected, 1961 08/13 Li'l Abner debut, 1934 +08/14 France introduces motor vehicle registration, 1893 08/14 Social Security begins in US, 1935 08/15 Gandhi's movement obtains independence for Pakistan and India, 1947 08/15 Hurricane hits Plymouth Plantation, 1635 08/16 Roller Coaster patented, 1898 08/17 First public bath opened in N.Y., 1891 +08/17 Indonesian Declaration of Independence, 1945 08/18 Anti-Cigarette League of America formed +08/18 Power blackout on Java, Indonesia, affects almost + 100 million people, 2005 08/19 Air Force cargo plane snares payload from Discoverer 14 spy satellite, marking start of practical military reconnaissance from space, 1960 08/19 Gail Borden patents condensed milk, 1856 +08/20 First commercial radio station airs in Detroit, Michigan, 1920 +08/21 Louvre employee steals the "Mona Lisa", 1911 08/22 Death of King Richard III, 1485, Last of the Plantagenets 08/22 Joe Walker sets X-15 all time altitude mark (67 miles), 1963 08/22 St. Columbia reports seeing monster in Loch Ness, 565 @@ -264,11 +451,14 @@ 08/24 "Alice's Restaurant" premieres in New York and Los Angeles, 1969 08/24 -126.9 F at Vostok, Antarctica, 1960 08/24 British troops burn Washington, 1814 -08/25 Gen. De Gaulle leads French forces into Paris, 1944 +08/25 General de Gaulle leads French forces into Paris, 1944 08/26 19th amendment of US constitution gives women the vote, 1920 +08/26 Women get the vote, 1920 08/27 "Tarzan of the Apes" published, 1912 08/27 Krakatoa, Java explodes with a force of 1,300 megatons, 1883 +08/28 Henry Hudson discovers Delaware Bay, 1609 08/28 Martin Luther King leads over 200,000 in civil rights rally in Washington, DC, 1963 +08/29 Michael Faraday discovers electromagnetic induction, 1831 08/29 Star in Cygnus goes nova and becomes 4th brightest in sky, 1975; Nova Cygni 1975. 08/30 75 cents a pound tariff set on opium, 1842 @@ -279,26 +469,32 @@ 08/31 Mary Anne Nichols becomes Jack the Ripper's first victim, 1888 08/31 Non-aggression pact signed by USSR and Afghanistan, 1926 08/31 Federation of Malaya gains independence from Great Britain, 1957 +08/31 Independent union "Solidarnosc" born, Gdansk, 1980 09/01 Bobby Fischer defeats Boris Spassky in World Chess Match, 1972 09/01 Joshua A. Norton proclaims himself 'Emperor Norton I', 1859 09/02 Great Britain adopts Gregorian Calendar, 1752 09/02 Japan signs unconditional surrender on US battleship `Missouri', 1945 09/03 Richard ``the Lionheart'' crowned king of England, 1189 09/03 Anniversary of the Founding of the Republic in San Marino +09/04 Napoleon III is deposed and the Third Republic is declared, 1870 09/05 US President Kennedy orders resumption of underground nuclear tests, 1961 +09/05 St. Gotthard Tunnel opens in Switzerland, 1980 09/05 The first Continental Congress was convened in Philadelphia, 1774 09/06 149 Pilgrims set forth from England aboard the Mayflower, 1620 09/06 First Star Trek episode (The Man Trap) aired 1966 09/06 US President McKinley shot, 1901 09/06 Somhlolo in Swaziland +09/07 Brazil declares its independence from Portugal, 1822 09/08 "Star Trek" debuts on NBC (1966) 09/08 Jack the Ripper kills again, Annie Chapman is second victim, 1888 09/08 US President Ford pardons Richard M. Nixon, 1974 09/09 California becomes the 31st state of the USA, 1850 +09/09 John Herschel takes the first glass plate photograph, 1839 09/09 United Colonies is renamed the United States, 1776 09/10 Mountain Meadows Massacre. Mormons kill Gentile wagon train, 1857 09/11 CIA-sponsored terrorists overthrow Chilean government, murder President Allende, 1973 09/11 Terrorists destroy World Trade Center in New York, 2001 +09/11 World Wide Fund (WWF) founded, 1961 09/12 German paratroopers rescue Mussolini from captivity in Rome, 1943 09/12 Germany annexes Sudetenland, 1938 09/13 58 °C (136.4 °F) measured at el Azizia, Libya, 1922 @@ -310,24 +506,33 @@ 09/14 The US Selective Service Act establishes the first peacetime draft, 1940 09/15 Soviet Premier Nikita Khrushchev begins his 13 day tour of the US, 1959 09/15 The US Foreign Affairs Dept. becomes the US State Department, 1789 +09/15 The Nazis adopt a new national flag with the swastika, 1935 +09/16 General Motors is founded, 1908 09/16 The village of Shawmut, Massachusetts, becomes the city of Boston, 1630 09/16 Malaya, Sabah, Sarawak and Singapore unite to become Malaysia, 1963 09/17 Battle of Antietam, 1862 +09/17 Joshua A. Norton proclaims himself 'Emperor Norton I', 1859 09/18 Victory of Uprona in Burundi 09/19 New Zealand women get the right to vote, 1893 +09/19 Walt Disney releases Steamboat Willie, 1928 09/20 Equal Rights Party nominates Belva Lockwood for US President, 1884 09/20 First meeting of the American Association for the Advancement of Science, 1848 09/20 First meeting of the US National Research Council, 1916 09/20 Magellan leaves Spain on the first Round the World passage, 1519 09/20 The Roxy Theater opens in Hollywood, 1973 +09/21 J. R. R. Tolkien's The Hobbit is published, 1937 +09/22 Allied forces form the independent nation West Germany, 1953 09/22 US President Lincoln issues the Emancipation Proclamation, 1862 09/22 Special prosecutor Leon Jeworski subpoenas US President Nixon, 1974 09/22 The first Soviet atomic bomb explodes, 1949 09/23 Philippine President Ferdinand Marcos declares martial law, 1972 09/23 The New York Knickerbockers becomes the first US Baseball club, 1845 09/23 US Vice President Nixon denies campaign fund fraud with his "Checkers" speech, 1952 +09/24 The Netherlands surrenders New Amsterdam to England, 1664 +09/25 Battle of Stamford Bridge marks the end of the Viking era, 1066 09/25 Sandra Day O'Connor becomes first woman on US Supreme Court, 1981 +09/26 Concorde makes its first non-stop crossing of the Atlantic, 1973 09/27 The first passenger was hauled in a locomotive in England, 1825 09/28 "Pilgrim's Progress" published, 1678 09/28 A Greek soldier runs 26+ miles after the Persian defeat at Marathon, @@ -336,10 +541,14 @@ 1888 09/30 The first tooth is extracted under anesthesia in Charleston, Mass, 1846 09/30 The verdicts of the Nuremberg trials are announced, 1946 +10/01 Austria issues the world's first postcards, 1869 10/01 NASA officially begins operations, 1958 +10/02 Jacques Cartier discovers Montreal, Quebec, 1535 10/02 Thurgood Marshall sworn as the first black Supreme Court Justice, 1967 +10/03 O. J. Simpson is found not guilty of murder, 1995 10/04 Crimean war begins, 1853 10/04 First space vehicle, Sputnik I, launched, 1957 +10/05 Portugal declares itself a republic, 1910 10/06 Antioch College is the first public school to admit men and women, 1853 10/06 Egyptian President Anwar es-Sadat is assassinated in Cairo, 1981 10/06 Israel is attacked by the alliance of Egypt and Syria, 1973 @@ -349,6 +558,7 @@ 10/07 Mother Teresa of Calcutta awarded the Nobel Peace Prize, 1979 10/07 Police stop Wilbur Mills car, Fanne Fox jumps into water, 1974 10/08 Great Chicago Fire, 1871 +10/08 San Marino adopts its written constitution, 1600 10/09 First two-way telephone conversation, 1876 10/10 Beginning of the Wars for Independence in Cuba 10/10 Foundation of the Workers Party in North Korea @@ -360,6 +570,8 @@ 10/11 The second Vatican Ecumenical Council opens in Rome, 1962 10/11 First broadcast of Saturday Night Live, 1975 10/12 Bahama Natives discover Columbus of Europe lost on their shores, 1492 +10/12 Bavarian Crown Prince Ludwig married Princess Therese of + Saxony-Hildburghausen, Oktoberfest, 1810 10/12 Khrushchev pounds his desk with shoe during a speech to the UN, 1960 10/12 Man O'War's last race, 1920 10/12 Native Americans discover Columbus of Europe lost on their shores, 1492 @@ -367,29 +579,42 @@ 10/13 US Navy born, 1775, authorized by the Second Continental Congress 10/14 Battle of Hastings won by William the Conqueror and the Normans, 1066 10/14 Chuck Yeager breaks sound barrier, 1947 +10/15 Edison Electric Light Company begins operation, 1878 10/15 First draft card burned, 1965 +10/16 The Walt Disney Company is founded by Walt Disney + and his brother, Roy Disney, 1923 +10/17 Al Capone convicted of income tax evasion, 1931 10/18 Boston Shoemakers form first US labor org., 1648 10/18 Soviets announce their probe took photos of the Moon's far side, 1959 +10/18 The Grand Ole Opry opens its doors, 1925 10/19 Mao Tse-tung establishes the People's Republic of China, 1949 10/19 Napoleon's beaten army begins the long retreat from Moscow, 1812 10/20 "Saturday Night Massacre", 1973 10/20 OPEC embargo, 1973 10/21 Edison makes the first practical incandescent lamp, 1879 10/21 Guggenheim Museum opens, 1959 +10/22 Laos gains independence from France, 1953 10/23 Battle of Leyte Gulf begins, 1944 10/23 Day of the 1956 revolution in Hungary 10/23 Earth created at 6:30 AM, 4004BC. +10/23 South African troops invade Angola in support of UNITA and FNLA, 1975 10/23 Swallows leave Capistrano +10/24 Founding of the United Nations, 1945 10/25 The UN removes Taiwan and admits the People's Republic of China, 1971 10/26 UN's World Health Organization declares smallpox eradicated, 1978 10/27 New York's Boss Tweed is arrested on fraud charges, 1871 10/27 The first New York Subway is opened, 1904 +10/27 Stock markets around the world crash because of fears of + a global economic meltdown, 1997 10/28 Columbus discovers Cuba, 1492 10/28 Constantine's army defeats forces of Maxentius at Mulvian Bridge, 312 10/28 Harvard was founded in Massachusetts, 1636 10/28 Statue of Liberty was dedicated on Bedloe's Island, 1886 +10/29 Leibniz makes the first use of the "long s" for integral, 1675 10/29 Stock Market Crash, 1929 +10/30 Communist Party of Australia founded in Sydney, 1920 10/30 Orson Welles' "War of the Worlds" broadcast, 1938 +10/31 First hydrogen bomb blasts Enewetak, 1952 10/31 Luther nails 95 Theses to door of Castle Church, Wittenberg, 1517 11/01 Austria-Hungary become two separate nations, 1918 11/01 Puerto Rican nationalists try to kill Truman at the Blair House, 1950 @@ -401,8 +626,11 @@ 11/04 Iranian militants seize US embassy personnel in Teheran, 1979 11/04 Soviet forces crush the anti-communist revolt in Hungary, 1956 11/05 Guy Fawkes' Plot, 1605 +11/06 Anniversary of the October Socialist Revolution (2 days) in U.S.S.R. 11/07 Abolitionist newspaperman Elijah P. Lovejoy murdered by mob, 1837 11/07 Lewis and Clark Expedition in sight of the Pacific Ocean, 1805 +11/08 Invasion of Sweden by Danish forces results in the + Stockholm Bloodbath, 1520 11/09 Blackout of New York, New England, and Eastern Canada, 1965 11/09 Giant panda discovered (?!), China, 1927 11/09 Jack the Ripper kills fifth and final victim, Jane Kelly, 1888 @@ -411,65 +639,104 @@ 11/10 41 Women arrested in suffragette demonstrations near White House, 1917 11/10 Cpt. Wirz, commandant of Andersonville Prison hanged, 1865 11/10 Henry Stanley asks David Livingstone, "Dr. Livingstone, I presume?", 1871 +11/11 First broadcast of Sesame Street, 1970 11/11 Washington becomes the 42nd state, 1889 11/12 Dr. Sun Yat-sen's Birthday in Taiwan 11/12 USA first exports oil to Europe, 1861 +11/13 St. Brice's Day massacre by order of Ethelred, king of England, 1002 +11/14 Czechoslovakia becomes a republic, 1918 11/14 Quarter Pounder price raised from $0.53 to $0.55 in violation of Nixon price controls (but okayed by Price Commission after formal request from McDonald's), 1971 +11/15 First assembly of the League of Nations is held in Geneva, 1920 11/15 Niagara Falls power plant startup, 1896 11/16 Opening of the Suez Canal, 1869 11/16 Albert Hofmann synthesizes LSD in Switzerland, 1938 11/17 46,000 meteoroids fall over AZ in 20 minutes, 1966 +11/17 Elizabeth I of England succeeds Queen Mary I of England, 1558 11/17 Richard Nixon says "I am not a crook.", 1973 11/18 First hydrogen bomb blasts Enewetok, 1952 11/18 Local standard time zones established for US, 1883 11/19 Gettysburg Address delivered, 1863 +11/19 Samuel Goldwyn and Edgar Selwyn establish Goldwyn Company, 1916 +11/20 Nuremberg Trials against 24 Nazi war criminals begin, 1945 11/21 Announcement of 18 1/2 minute gap on Watergate tape, 1973 +11/21 Birmingham Pub Bombings by the IRA kill 21 people, 1974 +11/22 John F. Kennedy is assassinated in Dallas, Texas, 1963 11/22 Kennedy shot in Dallas, Texas by Lee Harvey Oswald, 1963 11/23 First broadcast of Dr. Who (longest running TV series), 1963 +11/23 The first edition of Life is published. 1936 +11/24 Alleged assassin Lee Harvey Oswald is killed by + Jack Ruby in Dallas, Texas, 1963 11/24 Lee Harvey Oswald killed by Jack Ruby, 1963 11/25 Alfred Nobel invents dynamite, 1867 +11/26 Last flight ever with a Concorde made over Bristol, UK, 2003 11/27 Alfred Nobel establishes Nobel Prize, 1895 -11/27 Friction match invented, England, 1826 +11/27 Friction match invented by englishman John Walker, Sweden, 1826 11/27 Hoosac Railroad Tunnel completed, 1873, in NW Massachusetts +11/28 Albania declares its independence from the Ottoman Empire, 1912 11/29 King Tut's tomb opened, 1922 12/01 First national corn-husking championship, Alleman IA, 1924 +12/01 Ford Motor Company introduces the first moving assembly line, 1913 12/01 Martin Luther King Jr., leads black boycott of Montgomery buses, 1955 12/01 Rosa Parks refuses to move to back of the bus (Montgomery, AL), 1953 +12/02 Napoleon III becomes Emperor of the French, 1852 12/03 First neon light display, Paris, 1910 12/03 First successful human heart transplant led by Dr. Barnard, 1967 12/03 The Montreux Casino burns down during a Frank Zappa concert, 1971 +12/04 People's Republic of China adopts its current constitution, 1982 12/04 Washington takes leave of his officers at Fraunce's Tavern, NYC, 1783 12/05 End of Prohibition, 1933 (at least the alcohol part) 12/05 Phi Beta Kappa founded, 1776 12/05 The Eighteenth Amendment repealed, ending Prohibition, 1933 +12/06 London becomes the world's first city with motorised cabs, 1897 12/07 Japan bombs Pearl Harbor, 1941 12/08 Japan enters Second World War with invasion of Pantai Sabak, Kelantan, 1941 +12/08 Romanian Constitution is adopted in a referendum, 1991 12/09 Ball-bearing roller skates patented, 1884 12/10 Metric system established in France, 1799 12/10 Nobel Peace Prize awarded each year +12/11 The British Parliament enacts the Statute of Westminster, 1931 12/12 First wireless message sent across Atlantic by Marconi, 1901 12/13 Apollo 17 leaves the moon, with "last" men to walk on moon aboard, 1972 12/13 Dartmouth College chartered, 1769 12/13 Geminid meteor shower (look south) +12/14 Portugal joins the United Nations, 1955 12/15 Argo Merchant oil spill, 1976 12/15 Bill of Rights adopted, 1791 12/15 James Naismith invents basketball, Canada, 1891 12/15 Sitting Bull shot in head while submitting to arrest, 1890 +12/16 Pokemon episode (Electric Soldier Porygon) triggers attacks of + photosensitive epilepsy in hundreds of Japanese children, 1997 +12/17 Charles Dickens' A Christmas Carol is first published, 1843 +12/18 Indonesia invades Netherlands New Guinea, 1961 +12/19 Hitler becomes Supreme Commander-in-Chief of the + German Army, 1941 +12/20 Cheka founded, 1917 12/20 US buys ~1,000,000 sq. miles of Louisiana for ~$20/sq.mi. +12/21 Charles de Gaulle is elected President of France, 1958 12/21 Phileas Fogg completes his trip around the world in less than 80 days 12/21 Women gain the right to vote in South Australia, 1894 12/21 Women gain the right to hold political office in South Australia, 1894 +12/22 First freight train is operated in Roorkee in India, 1851 +12/23 The transistor is first demonstrated at Bell Laboratories, 1947 +12/24 Hong Kong falls to the Japanese Imperial Army, 1941 12/24 KKK formed in Pulaski, Tenn, 1865 +12/25 Christmas Island founded and named by Captain William Mynors, 1643 12/26 DPMA founded, 1951 12/27 APT report published, 1956 12/27 Ether first used as anesthetic in childbirth, 1845 12/28 Comet Kohoutek at perihelion, 1973 12/28 Proclamation of the Province of South Australia, 1836 +12/28 Spain recognizes independence of Mexico, 1836 12/29 Battle of Wounded knee, 1890 +12/29 Edison receives patent for Radio, 1891 12/30 First Los Angeles freeway dedicated, 1940 +12/30 Israel and the Vatican establish diplomatic relations, 1993 +12/30 Soviet Ukrainian Republic declared, 1917 12/31 St. Sylvester in Switzerland +12/31 First supersonic commercial flight by Tu-144, 1968 +12/31 Windows tax in England, 1695 12/31 Winterland closes its doors, 1978 #endif /* !_calendar_history_ */ Modified: head/usr.bin/calendar/calendars/calendar.music ============================================================================== --- head/usr.bin/calendar/calendars/calendar.music Sat Mar 14 22:07:11 2020 (r359004) +++ head/usr.bin/calendar/calendars/calendar.music Sun Mar 15 00:49:06 2020 (r359005) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@freebsd.org Sun Mar 15 02:39:13 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 3407326CC27; Sun, 15 Mar 2020 02:39:13 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-oi1-f176.google.com (mail-oi1-f176.google.com [209.85.167.176]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48g3Xw5zWSz4lqZ; Sun, 15 Mar 2020 02:39:12 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-oi1-f176.google.com with SMTP id v19so13978409oic.12; Sat, 14 Mar 2020 19:39:12 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:reply-to :from:date:message-id:subject:to:cc; bh=4dEdAJXHyT/xMJsbtcgzMDxGbWZ8TcExof3gdr/O9cE=; b=EYjqHO7hM2n1gLI5XSRQEEYdvXdzn8aqp5yKkbe0padIMYXU51KvebjAfButmhejzF GSzDEI1tUpX/k6OBAifqqmQh2r1Zt9FJAHGe2XxZatzp9+9WYSSaIM8SJNARDYGd9UQv Hl3CfV2CzU55BtxqQj+1sbyX56EwP7QKcqdkpqp1R9aJEVn2xAXP/b3q3jM2hbASzdnI /S1XD8PhA1pJn4UT3H3YOytJtBwC7hlaVK5Wdrb4sy2D1xnGz6QiLCKMkHvv6mwjFqYf 5swjcobwpfNaLZ7JvblhCrSVaH/SMLuJrL1gf1feEx7HrI1EHE1wQMaY/RcovKSLJSOq mfpw== X-Gm-Message-State: ANhLgQ0DuA366ctKObThgpnTKIp5Ih6lZ60W1DJD9gREQgRQFqQIMHKr NTVq3he3y1vwY5rsqj6RAor6WLZN X-Google-Smtp-Source: ADFU+vsm3Cxx0US8gXa6UdPHUfqbgHWpYcPTAUW1wfOnCpKOjlwXF6/u9St1j+UiR5Bixm/4FcRkIw== X-Received: by 2002:a05:6808:2ce:: with SMTP id a14mr1716439oid.175.1584239950305; Sat, 14 Mar 2020 19:39:10 -0700 (PDT) Received: from mail-ot1-f48.google.com (mail-ot1-f48.google.com. [209.85.210.48]) by smtp.gmail.com with ESMTPSA id j132sm6808287oih.1.2020.03.14.19.39.09 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 14 Mar 2020 19:39:10 -0700 (PDT) Received: by mail-ot1-f48.google.com with SMTP id k26so14392221otr.2; Sat, 14 Mar 2020 19:39:09 -0700 (PDT) X-Received: by 2002:a9d:7695:: with SMTP id j21mr11096626otl.157.1584239949582; Sat, 14 Mar 2020 19:39:09 -0700 (PDT) MIME-Version: 1.0 References: <202003150049.02F0n67t076614@repo.freebsd.org> In-Reply-To: <202003150049.02F0n67t076614@repo.freebsd.org> Reply-To: cem@freebsd.org From: Conrad Meyer Date: Sat, 14 Mar 2020 19:38:58 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r359005 - head/usr.bin/calendar/calendars To: "Pedro F. Giffuni" Cc: src-committers , svn-src-all , svn-src-head Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 48g3Xw5zWSz4lqZ X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-6.00 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; REPLY(-4.00)[]; TAGGED_FROM(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Mar 2020 02:39:13 -0000 On Sat, Mar 14, 2020 at 5:49 PM Pedro F. Giffuni wrote: > > Author: pfg > Date: Sun Mar 15 00:49:06 2020 > New Revision: 359005 > URL: https://svnweb.freebsd.org/changeset/base/359005 > > Log: > calendar(1): Updates and corrections for some calendar files. > > These have an educational value and are, no doubt, an integral part of the fun > behind running the BSDs. Hmm. I don't believe calendar(1) has education value (or to the extent it has quantifiable value, N <= 0). Nor does it have more subjective "fun" value. It certainly isn't integral to the system. It's a toy of a certain era that has aged poorly. It belongs with other fun and non-integral components, like sopwith(6), in ports. Best, Conrad P.S., calendar(1) is not ncal(1). Sometimes the similar names are confusing. From owner-svn-src-head@freebsd.org Sun Mar 15 03:03:02 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 6C28426EE4D; Sun, 15 Mar 2020 03:03:02 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48g44Q1v6Fz4THv; Sun, 15 Mar 2020 03:03:02 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 398AB12DE; Sun, 15 Mar 2020 03:03:02 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02F332qx061387; Sun, 15 Mar 2020 03:03:02 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02F3326Z061386; Sun, 15 Mar 2020 03:03:02 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003150303.02F3326Z061386@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Sun, 15 Mar 2020 03:03:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359006 - head/sys/dev/usb/net X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/sys/dev/usb/net X-SVN-Commit-Revision: 359006 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Mar 2020 03:03:02 -0000 Author: emaste Date: Sun Mar 15 03:03:01 2020 New Revision: 359006 URL: https://svnweb.freebsd.org/changeset/base/359006 Log: muge: enable RXCSUM as it now works MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Modified: head/sys/dev/usb/net/if_muge.c Modified: head/sys/dev/usb/net/if_muge.c ============================================================================== --- head/sys/dev/usb/net/if_muge.c Sun Mar 15 00:49:06 2020 (r359005) +++ head/sys/dev/usb/net/if_muge.c Sun Mar 15 03:03:01 2020 (r359006) @@ -54,9 +54,7 @@ __FBSDID("$FreeBSD$"); * A number of features supported by the lan78xx are not yet implemented in * this driver: * - * - RX/TX checksum offloading: Nothing has been implemented yet for - * TX checksumming. RX checksumming works with ICMP messages, but is broken - * for TCP/UDP packets. + * - TX checksum offloading: Nothing has been implemented yet. * - Direct address translation filtering: Implemented but untested. * - VLAN tag removal. * - Support for USB interrupt endpoints. @@ -128,7 +126,6 @@ SYSCTL_INT(_hw_usb_muge, OID_AUTO, debug, CTLFLAG_RWTU "Debug level"); #endif -#define MUGE_DEFAULT_RX_CSUM_ENABLE (false) #define MUGE_DEFAULT_TX_CSUM_ENABLE (false) #define MUGE_DEFAULT_TSO_CSUM_ENABLE (false) @@ -1616,8 +1613,7 @@ muge_attach_post_sub(struct usb_ether *ue) */ ifp->if_capabilities |= IFCAP_VLAN_MTU; ifp->if_hwassist = 0; - if (MUGE_DEFAULT_RX_CSUM_ENABLE) - ifp->if_capabilities |= IFCAP_RXCSUM; + ifp->if_capabilities |= IFCAP_RXCSUM; if (MUGE_DEFAULT_TX_CSUM_ENABLE) ifp->if_capabilities |= IFCAP_TXCSUM; From owner-svn-src-head@freebsd.org Sun Mar 15 03:32:40 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 86DE427195C; Sun, 15 Mar 2020 03:32:40 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48g4kc244Nz4K9R; Sun, 15 Mar 2020 03:32:40 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 31DE61862; Sun, 15 Mar 2020 03:32:40 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02F3Wedx079301; Sun, 15 Mar 2020 03:32:40 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02F3WeKs079300; Sun, 15 Mar 2020 03:32:40 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003150332.02F3WeKs079300@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Sun, 15 Mar 2020 03:32:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359007 - head/sys/dev/usb/net X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/sys/dev/usb/net X-SVN-Commit-Revision: 359007 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Mar 2020 03:32:40 -0000 Author: emaste Date: Sun Mar 15 03:32:39 2020 New Revision: 359007 URL: https://svnweb.freebsd.org/changeset/base/359007 Log: muge: drop CSUM from MUGE_DEFAULT_TSO_CSUM_ENABLE TSO is independent of checksum offload Modified: head/sys/dev/usb/net/if_muge.c Modified: head/sys/dev/usb/net/if_muge.c ============================================================================== --- head/sys/dev/usb/net/if_muge.c Sun Mar 15 03:03:01 2020 (r359006) +++ head/sys/dev/usb/net/if_muge.c Sun Mar 15 03:32:39 2020 (r359007) @@ -127,7 +127,7 @@ SYSCTL_INT(_hw_usb_muge, OID_AUTO, debug, CTLFLAG_RWTU #endif #define MUGE_DEFAULT_TX_CSUM_ENABLE (false) -#define MUGE_DEFAULT_TSO_CSUM_ENABLE (false) +#define MUGE_DEFAULT_TSO_ENABLE (false) /* Supported Vendor and Product IDs. */ static const struct usb_device_id lan78xx_devs[] = { @@ -1623,7 +1623,7 @@ muge_attach_post_sub(struct usb_ether *ue) * here, that's something related to socket buffers used in Linux. * FreeBSD doesn't have that as an interface feature. */ - if (MUGE_DEFAULT_TSO_CSUM_ENABLE) + if (MUGE_DEFAULT_TSO_ENABLE) ifp->if_capabilities |= IFCAP_TSO4 | IFCAP_TSO6; #if 0 From owner-svn-src-head@freebsd.org Sun Mar 15 17:40:15 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7740C274B51; Sun, 15 Mar 2020 17:40:15 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48gRXb0cdFz4L4q; Sun, 15 Mar 2020 17:40:15 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id DF677B34F; Sun, 15 Mar 2020 17:40:14 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02FHeEvn086726; Sun, 15 Mar 2020 17:40:14 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02FHeE0v086725; Sun, 15 Mar 2020 17:40:14 GMT (envelope-from imp@FreeBSD.org) Message-Id: <202003151740.02FHeE0v086725@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Sun, 15 Mar 2020 17:40:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359008 - head/sys/modules/cam X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: head/sys/modules/cam X-SVN-Commit-Revision: 359008 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Mar 2020 17:40:15 -0000 Author: imp Date: Sun Mar 15 17:40:14 2020 New Revision: 359008 URL: https://svnweb.freebsd.org/changeset/base/359008 Log: We don't need $M/$M in the path anymore. Now that machdep files are gone, we don't need $S/$M/$M in the path to find them. Modified: head/sys/modules/cam/Makefile Modified: head/sys/modules/cam/Makefile ============================================================================== --- head/sys/modules/cam/Makefile Sun Mar 15 03:32:39 2020 (r359007) +++ head/sys/modules/cam/Makefile Sun Mar 15 17:40:14 2020 (r359008) @@ -2,7 +2,7 @@ S= ${SRCTOP}/sys -.PATH: $S/cam $S/cam/scsi $S/cam/ata $S/cam/nvme $S/dev/nvme $S/${MACHINE}/${MACHINE} +.PATH: $S/cam $S/cam/scsi $S/cam/ata $S/cam/nvme $S/dev/nvme KMOD= cam From owner-svn-src-head@freebsd.org Sun Mar 15 18:59:13 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 3C42A27622E; Sun, 15 Mar 2020 18:59:13 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48gTHh6Gpcz4Xb2; Sun, 15 Mar 2020 18:59:12 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from [192.168.0.6] (unknown [181.52.72.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: pfg) by smtp.freebsd.org (Postfix) with ESMTPSA id 2EF15B357; Sun, 15 Mar 2020 18:59:12 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Subject: Re: svn commit: r359005 - head/usr.bin/calendar/calendars To: cem@freebsd.org Cc: src-committers , svn-src-all , svn-src-head References: <202003150049.02F0n67t076614@repo.freebsd.org> From: Pedro Giffuni Organization: FreeBSD Message-ID: Date: Sun, 15 Mar 2020 13:59:10 -0500 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Mar 2020 18:59:13 -0000 On 14/03/2020 21:38, Conrad Meyer wrote: > On Sat, Mar 14, 2020 at 5:49 PM Pedro F. Giffuni wrote: >> Author: pfg >> Date: Sun Mar 15 00:49:06 2020 >> New Revision: 359005 >> URL: https://svnweb.freebsd.org/changeset/base/359005 >> >> Log: >> calendar(1): Updates and corrections for some calendar files. >> >> These have an educational value and are, no doubt, an integral part of the fun >> behind running the BSDs. > Hmm. I don't believe calendar(1) has education value (or to the > extent it has quantifiable value, N <= 0). Nor does it have more > subjective "fun" value. It certainly isn't integral to the system. Some cultures despise the value of history and things like education and maps and degenerate accordingly [1]: this tool helps by hinting curiosity. Of course if the database is not populated or people don't use calendar(1) it won't be effective at all. > It's a toy of a certain era that has aged poorly. Some quite long lasting institutions like the Roman Catholic Church, which will likely outlive me and you, use it extensively: http://www.romcal.net/output/2020.htm > It belongs with other fun and non-integral components, like > sopwith(6), in ports. Ultimately that's one of the reasons why there is interest in a packaged base. There are plenty of tools  in base that people don't commonly use; we have to find consensus instead of imposing our own limited views. Pedro. [1] https://youtu.be/lj3iNxZ8Dww From owner-svn-src-head@freebsd.org Sun Mar 15 21:47:17 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id A8D90279CDC; Sun, 15 Mar 2020 21:47:17 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48gY1d2s0Gz4cJs; Sun, 15 Mar 2020 21:47:17 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 09F18E375; Sun, 15 Mar 2020 21:47:17 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02FLlGHa037271; Sun, 15 Mar 2020 21:47:16 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02FLlGxd037270; Sun, 15 Mar 2020 21:47:16 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003152147.02FLlGxd037270@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Sun, 15 Mar 2020 21:47:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359009 - head/sys/dev/usb/net X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/sys/dev/usb/net X-SVN-Commit-Revision: 359009 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Mar 2020 21:47:17 -0000 Author: emaste Date: Sun Mar 15 21:47:16 2020 New Revision: 359009 URL: https://svnweb.freebsd.org/changeset/base/359009 Log: if_muge: whitespace and style cleanup Submitted by: clang-format (in part) Sponsored by: The FreeBSD Foundation Modified: head/sys/dev/usb/net/if_muge.c Modified: head/sys/dev/usb/net/if_muge.c ============================================================================== --- head/sys/dev/usb/net/if_muge.c Sun Mar 15 17:40:14 2020 (r359008) +++ head/sys/dev/usb/net/if_muge.c Sun Mar 15 21:47:16 2020 (r359009) @@ -656,8 +656,8 @@ lan78xx_set_rx_max_frame_length(struct muge_softc *sc, * 0 is returned. */ static int -lan78xx_miibus_readreg(device_t dev, int phy, int reg) { - +lan78xx_miibus_readreg(device_t dev, int phy, int reg) +{ struct muge_softc *sc = device_get_softc(dev); int locked; uint32_t addr, val; @@ -1178,7 +1178,6 @@ muge_bulk_read_callback(struct usb_xfer *xfer, usb_err switch (USB_GET_STATE(xfer)) { case USB_ST_TRANSFERRED: - /* * There is always a zero length frame after bringing the * interface up. @@ -1195,7 +1194,6 @@ muge_bulk_read_callback(struct usb_xfer *xfer, usb_err off = 0; while (off < actlen) { - /* The frame header is aligned on a 4 byte boundary. */ off = ((off + 0x3) & ~0x3); @@ -1206,7 +1204,6 @@ muge_bulk_read_callback(struct usb_xfer *xfer, usb_err off += (sizeof(rx_cmd_a)); rx_cmd_a = le32toh(rx_cmd_a); - /* Extract RX CMD B. */ if (off + sizeof(rx_cmd_b) > actlen) goto tr_setup; @@ -1214,7 +1211,6 @@ muge_bulk_read_callback(struct usb_xfer *xfer, usb_err off += (sizeof(rx_cmd_b)); rx_cmd_b = le32toh(rx_cmd_b); - /* Extract RX CMD C. */ if (off + sizeof(rx_cmd_c) > actlen) goto tr_setup; @@ -1302,7 +1298,7 @@ muge_bulk_read_callback(struct usb_xfer *xfer, usb_err * be in host network order. */ m->m_pkthdr.csum_data = - ntohs(0xffff); + ntohs(0xffff); muge_dbg_printf(sc, "RX checksum offloaded (0x%04x)\n", @@ -1325,7 +1321,6 @@ muge_bulk_read_callback(struct usb_xfer *xfer, usb_err */ off += pktlen; } - /* FALLTHROUGH */ case USB_ST_SETUP: tr_setup: @@ -1333,7 +1328,6 @@ tr_setup: usbd_transfer_submit(xfer); uether_rxflush(ue); return; - default: if (error != USB_ERR_CANCELLED) { muge_warn_printf(sc, "bulk read error, %s\n", @@ -1374,7 +1368,7 @@ muge_bulk_write_callback(struct usb_xfer *xfer, usb_er muge_dbg_printf(sc, "USB TRANSFER status: USB_ST_SETUP\n"); tr_setup: if ((sc->sc_flags & MUGE_FLAG_LINK) == 0 || - (ifp->if_drv_flags & IFF_DRV_OACTIVE) != 0) { + (ifp->if_drv_flags & IFF_DRV_OACTIVE) != 0) { muge_dbg_printf(sc, "sc->sc_flags & MUGE_FLAG_LINK: %d\n", (sc->sc_flags & MUGE_FLAG_LINK)); @@ -1389,8 +1383,9 @@ tr_setup: */ return; } - for (nframes = 0; nframes < 16 && - !IFQ_DRV_IS_EMPTY(&ifp->if_snd); nframes++) { + for (nframes = 0; + nframes < 16 && !IFQ_DRV_IS_EMPTY(&ifp->if_snd); + nframes++) { IFQ_DRV_DEQUEUE(&ifp->if_snd, m); if (m == NULL) break; @@ -1636,9 +1631,9 @@ muge_attach_post_sub(struct usb_ether *ue) ifp->if_capenable = ifp->if_capabilities; mtx_lock(&Giant); - error = mii_attach(ue->ue_dev, &ue->ue_miibus, ifp, - uether_ifmedia_upd, ue->ue_methods->ue_mii_sts, - BMSR_DEFCAPMASK, sc->sc_phyno, MII_OFFSET_ANY, 0); + error = mii_attach(ue->ue_dev, &ue->ue_miibus, ifp, uether_ifmedia_upd, + ue->ue_methods->ue_mii_sts, BMSR_DEFCAPMASK, sc->sc_phyno, + MII_OFFSET_ANY, 0); mtx_unlock(&Giant); return (0); @@ -1696,7 +1691,7 @@ muge_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data /* Modify the RX CSUM enable bits. */ if ((mask & IFCAP_RXCSUM) != 0 && - (ifp->if_capabilities & IFCAP_RXCSUM) != 0) { + (ifp->if_capabilities & IFCAP_RXCSUM) != 0) { ifp->if_capenable ^= IFCAP_RXCSUM; if (ifp->if_drv_flags & IFF_DRV_RUNNING) { @@ -1708,7 +1703,6 @@ muge_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data MUGE_UNLOCK(sc); if (reinit) uether_init(ue); - } else { rc = uether_ioctl(ifp, cmd, data); } @@ -1894,7 +1888,7 @@ muge_setmulti(struct usb_ether *ue) MUGE_LOCK_ASSERT(sc, MA_OWNED); sc->sc_rfe_ctl &= ~(ETH_RFE_CTL_UCAST_EN_ | ETH_RFE_CTL_MCAST_EN_ | - ETH_RFE_CTL_DA_PERFECT_ | ETH_RFE_CTL_MCAST_HASH_); + ETH_RFE_CTL_DA_PERFECT_ | ETH_RFE_CTL_MCAST_HASH_); /* Initialize hash filter table. */ for (i = 0; i < ETH_DP_SEL_VHF_HASH_LEN; i++) @@ -1902,8 +1896,7 @@ muge_setmulti(struct usb_ether *ue) /* Initialize perfect filter table. */ for (i = 1; i < MUGE_NUM_PFILTER_ADDRS_; i++) { - sc->sc_pfilter_table[i][0] = - sc->sc_pfilter_table[i][1] = 0; + sc->sc_pfilter_table[i][0] = sc->sc_pfilter_table[i][1] = 0; } sc->sc_rfe_ctl |= ETH_RFE_CTL_BCAST_EN_; @@ -1911,7 +1904,7 @@ muge_setmulti(struct usb_ether *ue) if (ifp->if_flags & IFF_PROMISC) { muge_dbg_printf(sc, "promiscuous mode enabled\n"); sc->sc_rfe_ctl |= ETH_RFE_CTL_MCAST_EN_ | ETH_RFE_CTL_UCAST_EN_; - } else if (ifp->if_flags & IFF_ALLMULTI){ + } else if (ifp->if_flags & IFF_ALLMULTI) { muge_dbg_printf(sc, "receive all multicast enabled\n"); sc->sc_rfe_ctl |= ETH_RFE_CTL_MCAST_EN_; } else { @@ -1957,7 +1950,8 @@ muge_setpromisc(struct usb_ether *ue) * RETURNS: * Returns 0 on success or a negative error code. */ -static int muge_sethwcsum(struct muge_softc *sc) +static int +muge_sethwcsum(struct muge_softc *sc) { struct ifnet *ifp = uether_getifp(&sc->sc_ue); int err; From owner-svn-src-head@freebsd.org Sun Mar 15 21:49:59 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7895A279DA6 for ; Sun, 15 Mar 2020 21:49:59 +0000 (UTC) (envelope-from junchoon@dec.sakura.ne.jp) Received: from dec.sakura.ne.jp (dec.sakura.ne.jp [210.188.226.8]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48gY4h1tSdz3FtM; Sun, 15 Mar 2020 21:49:55 +0000 (UTC) (envelope-from junchoon@dec.sakura.ne.jp) Received: from kalamity.joker.local (124-18-96-116.dz.commufa.jp [124.18.96.116]) (authenticated bits=0) by dec.sakura.ne.jp (8.15.2/8.15.2/[SAKURA-WEB]/20080708) with ESMTPA id 02FFHjhM036294; Mon, 16 Mar 2020 00:17:45 +0900 (JST) (envelope-from junchoon@dec.sakura.ne.jp) Date: Mon, 16 Mar 2020 00:17:45 +0900 From: Tomoaki AOKI To: svn-src-head@freebsd.org Cc: tsoome@FreeBSD.org Subject: Re: svn commit: r358989 - in head/stand/efi: libefi loader loader/arch/arm loader/arch/arm64 Message-Id: <20200316001745.07df62f72d647b924b657d86@dec.sakura.ne.jp> Reply-To: junchoon@dec.sakura.ne.jp Organization: Junchoon corps X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.32; amd64-portbld-freebsd12.1) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 48gY4h1tSdz3FtM X-Spamd-Bar: ++++++ Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=none (mx1.freebsd.org: domain of junchoon@dec.sakura.ne.jp has no SPF policy when checking 210.188.226.8) smtp.mailfrom=junchoon@dec.sakura.ne.jp X-Spamd-Result: default: False [6.17 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; HAS_REPLYTO(0.00)[junchoon@dec.sakura.ne.jp]; MV_CASE(0.50)[]; TO_DN_NONE(0.00)[]; REPLYTO_ADDR_EQ_FROM(0.00)[]; HAS_ORG_HEADER(0.00)[]; RCPT_COUNT_TWO(0.00)[2]; RECEIVED_SPAMHAUS_PBL(0.00)[116.96.18.124.khpj7ygk5idzvmvt5x4ziurxhy.zen.dq.spamhaus.net : 127.0.0.10]; RCVD_TLS_LAST(0.00)[]; R_DKIM_NA(0.00)[]; ASN(0.00)[asn:9370, ipnet:210.188.224.0/19, country:JP]; MIME_TRACE(0.00)[0:+]; MID_RHS_MATCH_FROM(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; ARC_NA(0.00)[]; FAKE_REPLY(1.00)[]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[sakura.ne.jp]; AUTH_NA(1.00)[]; NEURAL_SPAM_MEDIUM(0.99)[0.988,0]; IP_SCORE(1.78)[ipnet: 210.188.224.0/19(4.95), asn: 9370(3.93), country: JP(0.04)]; NEURAL_SPAM_LONG(1.00)[1.000,0]; R_SPF_NA(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; GREYLIST(0.00)[pass,body] X-Spam: Yes X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Mar 2020 21:49:59 -0000 Hi. This broke loader menu display on efifb. At least on amd64. ESC sequences without ESC character are shown. Key input (at least 1, 2 and enter) works OK. I suspect outputs for SIO is sent to efifb and ESC codes are ignored. Reverting this fixes the issue. Not tried (not enough time for now as I'm mainly using stable/12), but possibly calling efi_cons_probe() from efi_cons_init() would be needed, as ome codes are moved from the latter to the former. > Author: tsoome > Date: Sat Mar 14 06:36:03 2020 > New Revision: 358989 > URL: https://svnweb.freebsd.org/changeset/base/358989 > > Log: > loader: add comconsole implementation on top of SIO protocol > > Provide comconsole on top of SIO for arm platforms (x86 does use bios version). > > Added: > head/stand/efi/loader/efiserialio.c (contents, props changed) > Modified: > head/stand/efi/libefi/efi_console.c > head/stand/efi/loader/arch/arm/Makefile.inc > head/stand/efi/loader/arch/arm64/Makefile.inc > head/stand/efi/loader/conf.c > head/stand/efi/loader/main.c > > Modified: head/stand/efi/libefi/efi_console.c > ============================================================================== > --- head/stand/efi/libefi/efi_console.c Sat Mar 14 05:57:22 2020 (r358988) > +++ head/stand/efi/libefi/efi_console.c Sat Mar 14 06:36:03 2020 (r358989) > @@ -377,9 +377,22 @@ efi_cons_respond(void *s __unused, const void *buf __u > { > } > > +/* > + * Set up conin/conout/coninex to make sure we have input ready. > + */ > static void > efi_cons_probe(struct console *cp) > { > + EFI_STATUS status; > + > + conout = ST->ConOut; > + conin = ST->ConIn; > + > + status = BS->OpenProtocol(ST->ConsoleInHandle, &simple_input_ex_guid, > + (void **)&coninex, IH, NULL, EFI_OPEN_PROTOCOL_GET_PROTOCOL); > + if (status != EFI_SUCCESS) > + coninex = NULL; > + > cp->c_flags |= C_PRESENTIN | C_PRESENTOUT; > } > > @@ -889,15 +902,7 @@ efi_cons_init(int arg) > if (conin != NULL) > return (0); > > - conout = ST->ConOut; > - conin = ST->ConIn; > - > conout->EnableCursor(conout, TRUE); > - status = BS->OpenProtocol(ST->ConsoleInHandle, &simple_input_ex_guid, > - (void **)&coninex, IH, NULL, EFI_OPEN_PROTOCOL_GET_PROTOCOL); > - if (status != EFI_SUCCESS) > - coninex = NULL; > - > if (efi_cons_update_mode()) > return (0); > > > Modified: head/stand/efi/loader/arch/arm/Makefile.inc > ============================================================================== > --- head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 05:57:22 2020 (r358988) > +++ head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 06:36:03 2020 (r358989) > @@ -1,6 +1,7 @@ > # $FreeBSD$ > > SRCS+= exec.c \ > + efiserialio.c \ > start.S > > HAVE_FDT=yes (Snip) > @@ -930,7 +936,6 @@ main(int argc, CHAR16 *argv[]) > if (!has_kbd && (howto & RB_PROBE)) > howto |= RB_SERIAL | RB_MULTIPLE; > howto &= ~RB_PROBE; > - uhowto = parse_uefi_con_out(); > > /* > * Read additional environment variables from the boot device's -- Tomoaki AOKI From owner-svn-src-head@freebsd.org Sun Mar 15 22:12:14 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 42F7B27A468; Sun, 15 Mar 2020 22:12:14 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-oi1-f178.google.com (mail-oi1-f178.google.com [209.85.167.178]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48gYZP707Wz4Mcb; Sun, 15 Mar 2020 22:12:13 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-oi1-f178.google.com with SMTP id k18so15752824oib.3; Sun, 15 Mar 2020 15:12:13 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:reply-to :from:date:message-id:subject:to:cc; bh=y6azxu8OxOkSryKmzq76I+qix1RNe5WuHa1inF9CXt4=; b=KWk60E99kPx6xxN2qYKJeIb7SdZ/EDSC6M2a//Y81WgSfLLGCE4+ZZd+IRxiSABkv2 CQAXEFV364Sky3s0mFTyOkYFq+JwH7NGO4o5kyMZV7z5lMPHpaJCSxITyxVUFKyQP/UJ NZRrg5NiUVJXnxUnieSELI7lK6rkZeamweiC6/OydDtz/uLE+UH78dX2OGEnSyJEWVW5 he1jbA1r0VnKMLNVd/4cwq+n4xCJFD5CK1cpe7QeLuKzF4/kS4bGAcDd1R1Ex8HqaqlA DXkUgtaK81ywymQp/ozq9jjNFJxoetcJdAAss3DrK7JeW/nuO0k+/DdyDH4FNxNS8fN+ KL5w== X-Gm-Message-State: ANhLgQ1i05SVIPE3yPibYG7G6sE8w2ZPVL9CqPGSnw2anPDvQppXAdmq YJeva53UGQ63dkXwJF3F71hV+tDW X-Google-Smtp-Source: ADFU+vv/ApYRGDa8enJl3Xi9YrxyK10H3TyenezT76PiTAJHnFJ17u43WDL1SESNF8mxVOaLgnCpKA== X-Received: by 2002:a05:6808:c8:: with SMTP id t8mr2043491oic.3.1584310332163; Sun, 15 Mar 2020 15:12:12 -0700 (PDT) Received: from mail-oi1-f174.google.com (mail-oi1-f174.google.com. [209.85.167.174]) by smtp.gmail.com with ESMTPSA id e22sm22577387ote.32.2020.03.15.15.12.11 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 15 Mar 2020 15:12:11 -0700 (PDT) Received: by mail-oi1-f174.google.com with SMTP id r7so15770461oij.0; Sun, 15 Mar 2020 15:12:11 -0700 (PDT) X-Received: by 2002:aca:4303:: with SMTP id q3mr1961910oia.81.1584310331323; Sun, 15 Mar 2020 15:12:11 -0700 (PDT) MIME-Version: 1.0 References: <202003150049.02F0n67t076614@repo.freebsd.org> In-Reply-To: Reply-To: cem@freebsd.org From: Conrad Meyer Date: Sun, 15 Mar 2020 15:12:00 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r359005 - head/usr.bin/calendar/calendars To: Pedro Giffuni Cc: src-committers , svn-src-all , svn-src-head Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 48gYZP707Wz4Mcb X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-5.78 / 15.00]; NEURAL_HAM_MEDIUM(-0.78)[-0.783,0]; REPLY(-4.00)[]; TAGGED_FROM(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Mar 2020 22:12:14 -0000 Pedro, It seems like you are attempting to belittle me, and perhaps the entire USA, by intentionally conflating the calendar(1) program with the entire concept of written records and education. Stop it. I know you're smart and have been around FreeBSD long enough to understand that in context, 'calendar(1)' referred to /usr/bin/calendar; pretending to misunderstand in order to respond to a straw man does not persuade. It's also just not a great way to treat fellow project contributors, even if you disagree with my opinion. Sarcasm doesn't work on the internet. Especially not among colleagues. Please try to speak directly and advocate for your viewpoints without resorting to it, or sweeping attacks on my person and/or "culture." Thank you, Conrad On Sun, Mar 15, 2020 at 11:59 AM Pedro Giffuni wrote: > Some cultures despise the value of history and things like education and > maps and degenerate accordingly [1]: this tool helps by hinting > curiosity. Of course if the database is not populated or people don't > use calendar(1) it won't be effective at all. > > > [calendar(1)]'s a toy of a certain era that has aged poorly. > > Some quite long lasting institutions like the Roman Catholic Church, > which will likely outlive me and you, use it extensively: > > http://www.romcal.net/output/2020.htm > > > [calendar(1)] belongs with other fun and non-integral components, like > > sopwith(6), in ports. > > Ultimately that's one of the reasons why there is interest in a packaged > base. There are plenty of tools in base that people don't commonly use; > we have to find consensus instead of imposing our own limited views. > > Pedro. > > [1] https://youtu.be/lj3iNxZ8Dww From owner-svn-src-head@freebsd.org Sun Mar 15 22:52:04 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 6BF1C27B092; Sun, 15 Mar 2020 22:52:04 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48gZSN0v3Jz47hV; Sun, 15 Mar 2020 22:52:04 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from [192.168.0.6] (unknown [181.52.72.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: pfg) by smtp.freebsd.org (Postfix) with ESMTPSA id 7677FCFA6; Sun, 15 Mar 2020 22:52:03 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Subject: Re: svn commit: r359005 - head/usr.bin/calendar/calendars To: cem@freebsd.org Cc: src-committers , svn-src-all , svn-src-head References: <202003150049.02F0n67t076614@repo.freebsd.org> From: Pedro Giffuni Organization: FreeBSD Message-ID: <814739f4-0e58-9c2c-5cfb-518d3ab608dc@FreeBSD.org> Date: Sun, 15 Mar 2020 17:52:02 -0500 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Mar 2020 22:52:04 -0000 On 15/03/2020 17:12, Conrad Meyer wrote: > Pedro, > > It seems like you are attempting to belittle me, and perhaps the > entire USA, by intentionally conflating the calendar(1) program with > the entire concept of written records and education. Stop it. I know > you're smart and have been around FreeBSD long enough to understand > that in context, 'calendar(1)' referred to /usr/bin/calendar; > pretending to misunderstand in order to respond to a straw man does > not persuade. For all I know the calendar(1) utility comes from Berkeley, it was included in the CSRG BSD distribution and was written from someone in the US. From my personal point of view, I believe my most important contribution to FreeBSD as a whole was r321834, which added the Catholic holidays, followed in many countries, to calendar(1). For non-catholics it is surely unimportant and a culture/religion uniqueness thing but I've always thought FreeBSD had such interest in culture diversity. Yes, for you calendar is something accidental that shouldn't be there, for me it's a differentiating factor. > It's also just not a great way to treat fellow project contributors, > even if you disagree with my opinion. That was not at all my intention. > Sarcasm doesn't work on the internet. Especially not among > colleagues. Please try to speak directly and advocate for your > viewpoints without resorting to it, or sweeping attacks on my person > and/or "culture." Please excuse me if you felt I meant anything personal against you or your way of thinking. I was trying to show you how someone else, like me, really sees somethings different. It is more that just code. Now, if we can just go on with the regular programming, and leave calendar(1) as it is. Pedro. From owner-svn-src-head@freebsd.org Sun Mar 15 23:34:19 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id AC5E227C049 for ; Sun, 15 Mar 2020 23:34:19 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound3d.ore.mailhop.org (outbound3d.ore.mailhop.org [54.186.57.195]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48gbP65YJHz3G2q for ; Sun, 15 Mar 2020 23:34:18 +0000 (UTC) (envelope-from ian@freebsd.org) ARC-Seal: i=1; a=rsa-sha256; t=1584315256; cv=none; d=outbound.mailhop.org; s=arc-outbound20181012; b=ADxxZRdn5w1HmrzpY9ijl4rrfPxU5OVyTDLraSx7eUZ/dhKLkotdE5LwDi+kxiPDZVh72F5yK08NC CI0RXmCcvNMhfP91QBkiGbQddjBuvI4265iIl5AI9Rp4zVAbUU9O6Z75A105NeXBWeQd1W9KWFZU2h 9iKxoPa4trOWMzAMGp+Zw7FE7U5K3M8pudD3eRtZeh5XpSHvRbhq0mK/iwThRaLAVwZQjyUApRDZ4b 2PY7PHY5LmuK31Uv6YgIgVb+xB4g+smjc2lWmuEfXWrt+hjQp4b5vZkendFqIJ6kGuVyYEjVO/dKln vyyrbBZ6p0LN6KFJ69UVsyW7xrFs4uQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=arc-outbound20181012; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:cc:to:from:subject:message-id:dkim-signature:from; bh=Lq77cxavgjQHlsfOyqA45G4+XmTYFDIU74G1n4RswT0=; b=QU3rZoDzEwvZwFbGwQrEsXboZ9C4Nqk8v2knI+f0ds0iuaZb7NsmQw/yJuerGMxl+vFwL7GW3XTZ/ 9yokgeI7QGwuXVT29rk/iN+tNY/X2eOI6ldFo5zX2Ix/qPyhG7PHxWnHeX8WFx7tLH+W2lAJ003ANY ZwT6kehYofhW6/TcBFWs0HVsrRFw2kiAYPL+D4wim/mIbSVJy2zNYzNPkquyvAzcEHoJxJNKLy/VQF pXHz7bg4W1A8yB/VNYCZxUoN4eVg5+sLWkK3jKrIHQKClQeLKE+zE+YVyf1WTqxlsDMHMXixuMLSEA acUqRPVdeedRIbkhOtIhZZsjIGxPR9g== ARC-Authentication-Results: i=1; outbound3.ore.mailhop.org; spf=softfail smtp.mailfrom=freebsd.org smtp.remote-ip=67.177.211.60; dmarc=none header.from=freebsd.org; arc=none header.oldest-pass=0; DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=dkim-high; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:cc:to:from:subject:message-id:from; bh=Lq77cxavgjQHlsfOyqA45G4+XmTYFDIU74G1n4RswT0=; b=oOzwDKPuwuEoRRVNngb+C/T0m4v0oqbobko+KRQUloZyZ+3f8B9dZj+yUOewKeryu+bS3GoIGUTsY ZwIfJ3Yi8KE9WmsKgGfk0WUUVkZJUlmFkPlg/sc16aS1v2B/9R9bJ23oHF7MUMRhLiuEGIZ2ZamldT fEkhvvh0ViZdvB7+r7+2pEa5PTusEodmad+MyOvWNcwAx76tzlfeS2nHWO7G5ogmDVGLDpFF5ASqjE pekn7b3zEUbxK6PYL98F564OOb8Y1Fq+ozwSySrpuhLuXodEpOq5N1UdJRdk+Mo10Z1vU2nSNdxYfi Tx2q86yogB6laBg9E2YsEDNbWJgo3QA== X-MHO-RoutePath: aGlwcGll X-MHO-User: 7ab6b4a6-6715-11ea-b80e-052b4a66b6b2 X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 67.177.211.60 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [67.177.211.60]) by outbound3.ore.mailhop.org (Halon) with ESMTPSA id 7ab6b4a6-6715-11ea-b80e-052b4a66b6b2; Sun, 15 Mar 2020 23:34:14 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id 02FNYDJG066081; Sun, 15 Mar 2020 17:34:13 -0600 (MDT) (envelope-from ian@freebsd.org) Message-ID: <2870c2b46eab83e6976ba1915fdf723b790d81fc.camel@freebsd.org> Subject: Re: svn commit: r359005 - head/usr.bin/calendar/calendars From: Ian Lepore To: cem@freebsd.org, Pedro Giffuni Cc: src-committers , svn-src-all , svn-src-head Date: Sun, 15 Mar 2020 17:34:13 -0600 In-Reply-To: References: <202003150049.02F0n67t076614@repo.freebsd.org> Content-Type: text/plain; charset="ASCII" X-Mailer: Evolution 3.28.5 FreeBSD GNOME Team Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 48gbP65YJHz3G2q X-Spamd-Bar: / Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-0.15 / 15.00]; local_wl_from(0.00)[freebsd.org]; NEURAL_HAM_LONG(-0.95)[-0.954,0]; NEURAL_SPAM_MEDIUM(0.81)[0.806,0]; ASN(0.00)[asn:16509, ipnet:54.186.0.0/15, country:US] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Mar 2020 23:34:19 -0000 On Sun, 2020-03-15 at 15:12 -0700, Conrad Meyer wrote: [...] > Sarcasm doesn't work on the internet. Do you mean things like... > URL: https://svnweb.freebsd.org/changeset/base/358562 > > Log: > Add extremely useful calendar(1) application to FreeBSD > > It does extremely useful things like execute sendmail and spew dubiously > accurate factoids. > > From the feedback, it seems like it is an essential utility in a modern unix > and not at all a useless bikeshed. How do those Linux people live without it? > Reverts r358561. Because I have to agree, that sure didn't work for me. Neither do hypocritical holier-than-thou proclamations, or attempts to wrap one's self in the mantle of victimhood after having behaved as a confrontational aggressor. -- Ian From owner-svn-src-head@freebsd.org Mon Mar 16 05:13:39 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 8DFEE25A058; Mon, 16 Mar 2020 05:13:39 +0000 (UTC) (envelope-from chuq@chuq.com) Received: from vc.chuq.com (vc.chuq.com [166.84.7.169]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Chuck Silvers", Issuer "Chuck Silvers" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 48gkwd5z57z4LWm; Mon, 16 Mar 2020 05:13:37 +0000 (UTC) (envelope-from chuq@chuq.com) Received: from spathi.chuq.com (unknown [24.4.24.36]) by vc169.vc.panix.com (Postfix) with ESMTPS id 0D04F3B5D78; Sun, 15 Mar 2020 22:13:31 -0700 (PDT) (envelope-from chuq@chuq.com) Received: by spathi.chuq.com (Postfix, from userid 1022) id D853E3CFFA23; Sun, 15 Mar 2020 22:13:29 -0700 (PDT) Date: Sun, 15 Mar 2020 22:13:29 -0700 From: Chuck Silvers To: Mark Johnston Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org, glebius@freebsd.org Subject: Re: svn commit: r358597 - head/sys/kern Message-ID: <20200316051329.GA4598@spathi.chuq.com> References: <202003040022.0240Mpm6074186@repo.freebsd.org> <20200313234817.GA10027@spy> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200313234817.GA10027@spy> X-Rspamd-Queue-Id: 48gkwd5z57z4LWm X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of chuq@chuq.com designates 166.84.7.169 as permitted sender) smtp.mailfrom=chuq@chuq.com X-Spamd-Result: default: False [-4.43 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.99)[-0.987,0]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+mx]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[chuq.com]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; RCPT_COUNT_FIVE(0.00)[5]; IP_SCORE(-2.14)[ip: (-3.35), ipnet: 166.84.0.0/16(-4.06), asn: 2033(-3.25), country: US(-0.05)]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:2033, ipnet:166.84.0.0/16, country:US]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[]; RECEIVED_SPAMHAUS_PBL(0.00)[36.24.4.24.khpj7ygk5idzvmvt5x4ziurxhy.zen.dq.spamhaus.net : 127.0.0.10] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Mar 2020 05:13:39 -0000 On Fri, Mar 13, 2020 at 07:48:17PM -0400, Mark Johnston wrote: > On Wed, Mar 04, 2020 at 12:22:51AM +0000, Chuck Silvers wrote: > > Author: chs > > Date: Wed Mar 4 00:22:50 2020 > > New Revision: 358597 > > URL: https://svnweb.freebsd.org/changeset/base/358597 > > > > Log: > > if vm_pager_get_pages_async() returns an error, release the sfio->nios > > refcount that we took earlier that represents the I/O that ended up > > not being started. > > I think a larger bug is that getpages_async is not consistent about > whether it invokes the completion callback in synchronous error cases. > For instance, vop_stdgetpages_async() always calls it, as does > ffs_getpages_async() when the filesystem fragment size is larger than > the page size. But vnode_pager_generic_getpages() does not. So if one > is using sendfile on a filesystem that does not implement > getpages_async, an error will cause sendfile_swapin() to unbusy the > input pages multiple times, and release the sfio refcount twice when it > should be done just once. ah yes, you're right. I was only looking at the path we actually hit. I think the simplest way to resolve this would be to change vnode_pager_generic_getpages() in the async case to always call the iodone callback and always return 0. (in the sync case vnode_pager_generic_getpages() would continue to return an error code if an error is encountered.) vm_pager_get_pages_async() could then be changed to return void since after the avoid changes it would always return 0. swap_pager_getpages_async() already always calls the iodone callback but it would return void too after the above changes. If that is agreeable to you and Gleb then I'll make the changes. -Chuck From owner-svn-src-head@freebsd.org Mon Mar 16 06:27:04 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 038EE25B8A6 for ; Mon, 16 Mar 2020 06:27:04 +0000 (UTC) (envelope-from tsoome@me.com) Received: from pv50p00im-ztdg10022001.me.com (pv50p00im-ztdg10022001.me.com [17.58.6.58]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48gmYL01bXz41rH for ; Mon, 16 Mar 2020 06:27:01 +0000 (UTC) (envelope-from tsoome@me.com) Received: from nazgul.lan (148-52-235-80.sta.estpak.ee [80.235.52.148]) by pv50p00im-ztdg10022001.me.com (Postfix) with ESMTPSA id A7840A02DF; Mon, 16 Mar 2020 06:26:59 +0000 (UTC) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 13.0 \(3608.60.0.2.5\)) Subject: Re: svn commit: r358989 - in head/stand/efi: libefi loader loader/arch/arm loader/arch/arm64 From: Toomas Soome In-Reply-To: <20200316001745.07df62f72d647b924b657d86@dec.sakura.ne.jp> Date: Mon, 16 Mar 2020 08:26:56 +0200 Cc: svn-src-head@freebsd.org, "tsoome@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <746EE981-536F-49AD-9B76-F9F103ECB1F9@me.com> References: <20200316001745.07df62f72d647b924b657d86@dec.sakura.ne.jp> To: junchoon@dec.sakura.ne.jp X-Mailer: Apple Mail (2.3608.60.0.2.5) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2020-03-16_01:, , signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1011 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1908290000 definitions=main-2003160032 X-Rspamd-Queue-Id: 48gmYL01bXz41rH X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.59 / 15.00]; TO_DN_EQ_ADDR_SOME(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:17.58.0.0/16]; FREEMAIL_FROM(0.00)[me.com]; MV_CASE(0.50)[]; DKIM_TRACE(0.00)[me.com:+]; DMARC_POLICY_ALLOW(-0.50)[me.com,quarantine]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; IP_SCORE(0.00)[ip: (-3.83), ipnet: 17.58.0.0/20(-2.00), asn: 714(-2.38), country: US(-0.05)]; RCVD_IN_DNSWL_LOW(-0.10)[58.6.58.17.list.dnswl.org : 127.0.5.1]; ASN(0.00)[asn:714, ipnet:17.58.0.0/20, country:US]; MID_RHS_MATCH_FROM(0.00)[]; RECEIVED_SPAMHAUS_PBL(0.00)[148.52.235.80.khpj7ygk5idzvmvt5x4ziurxhy.zen.dq.spamhaus.net : 127.0.0.10]; ARC_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[me.com]; R_DKIM_ALLOW(-0.20)[me.com:s=1a1hai]; NEURAL_HAM_MEDIUM(-0.99)[-0.987,0]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; IP_SCORE_FREEMAIL(0.00)[]; DWL_DNSWL_LOW(-1.00)[me.com.dwl.dnswl.org : 127.0.5.1]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Mar 2020 06:27:04 -0000 Hi! This means, your system has UART serial device =E2=80=94 you can check = this from loader prompt: efi-show -g global -v ConOut or with efivar = from running system. This would trigger efi console driver to use = TERM_EMU, which can be turned off by user and doing that would cause ESC = sequences to be passed directly to console. Might that be true in your = case? rgds, toomas > On 15. Mar 2020, at 17:17, Tomoaki AOKI = wrote: >=20 > Hi. >=20 > This broke loader menu display on efifb. At least on amd64. > ESC sequences without ESC character are shown. > Key input (at least 1, 2 and enter) works OK. > I suspect outputs for SIO is sent to efifb and ESC codes are ignored. >=20 > Reverting this fixes the issue. >=20 > Not tried (not enough time for now as I'm mainly using stable/12), > but possibly calling efi_cons_probe() from efi_cons_init() would be > needed, as ome codes are moved from the latter to the former. >=20 >=20 >> Author: tsoome >> Date: Sat Mar 14 06:36:03 2020 >> New Revision: 358989 >> URL: https://svnweb.freebsd.org/changeset/base/358989 >>=20 >> Log: >> loader: add comconsole implementation on top of SIO protocol >>=20 >> Provide comconsole on top of SIO for arm platforms (x86 does use = bios > version). >>=20 >> Added: >> head/stand/efi/loader/efiserialio.c (contents, props changed) >> Modified: >> head/stand/efi/libefi/efi_console.c >> head/stand/efi/loader/arch/arm/Makefile.inc >> head/stand/efi/loader/arch/arm64/Makefile.inc >> head/stand/efi/loader/conf.c >> head/stand/efi/loader/main.c >>=20 >> Modified: head/stand/efi/libefi/efi_console.c >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- head/stand/efi/libefi/efi_console.c Sat Mar 14 05:57:22 > 2020 (r358988) >> +++ head/stand/efi/libefi/efi_console.c > Sat Mar 14 06:36:03 2020 (r358989) >> @@ -377,9 +377,22 @@ efi_cons_respond(void *s __unused, const void = *buf __u >> { >> } >>=20 >> +/* >> + * Set up conin/conout/coninex to make sure we have input ready. >> + */ >> static void >> efi_cons_probe(struct console *cp) >> { >> + EFI_STATUS status; >> + >> + conout =3D ST->ConOut; >> + conin =3D ST->ConIn; >> + >> + status =3D BS->OpenProtocol(ST->ConsoleInHandle, > &simple_input_ex_guid, >> + (void **)&coninex, IH, NULL, > EFI_OPEN_PROTOCOL_GET_PROTOCOL); >> + if (status !=3D EFI_SUCCESS) >> + coninex =3D NULL; >> + >> cp->c_flags |=3D C_PRESENTIN | C_PRESENTOUT; >> } >>=20 >> @@ -889,15 +902,7 @@ efi_cons_init(int arg) >> if (conin !=3D NULL) >> return (0); >>=20 >> - conout =3D ST->ConOut; >> - conin =3D ST->ConIn; >> - >> conout->EnableCursor(conout, TRUE); >> - status =3D BS->OpenProtocol(ST->ConsoleInHandle, > &simple_input_ex_guid, >> - (void **)&coninex, IH, NULL, > EFI_OPEN_PROTOCOL_GET_PROTOCOL); >> - if (status !=3D EFI_SUCCESS) >> - coninex =3D NULL; >> - >> if (efi_cons_update_mode()) >> return (0); >>=20 >>=20 >> Modified: head/stand/efi/loader/arch/arm/Makefile.inc >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 > 05:57:22 2020 (r358988) >> +++ head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 = 06:36:03 > 2020 (r358989) >> @@ -1,6 +1,7 @@ >> # $FreeBSD$ >>=20 >> SRCS+=3D exec.c \ >> + efiserialio.c \ >> start.S >>=20 >> HAVE_FDT=3Dyes >=20 > (Snip) >=20 >> @@ -930,7 +936,6 @@ main(int argc, CHAR16 *argv[]) >> if (!has_kbd && (howto & RB_PROBE)) >> howto |=3D RB_SERIAL | RB_MULTIPLE; >> howto &=3D ~RB_PROBE; >> - uhowto =3D parse_uefi_con_out(); >>=20 >> /* >> * Read additional environment variables from the boot device's >=20 > --=20 > Tomoaki AOKI From owner-svn-src-head@freebsd.org Mon Mar 16 08:44:47 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 892A325F013; Mon, 16 Mar 2020 08:44:47 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48gqcH0BQHz4Wpn; Mon, 16 Mar 2020 08:44:47 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id EE0241DE70; Mon, 16 Mar 2020 08:44:46 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02G8ikew032843; Mon, 16 Mar 2020 08:44:46 GMT (envelope-from kp@FreeBSD.org) Received: (from kp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02G8ikoq032842; Mon, 16 Mar 2020 08:44:46 GMT (envelope-from kp@FreeBSD.org) Message-Id: <202003160844.02G8ikoq032842@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org using -f From: Kristof Provost Date: Mon, 16 Mar 2020 08:44:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359010 - head/tests/sys/net X-SVN-Group: head X-SVN-Commit-Author: kp X-SVN-Commit-Paths: head/tests/sys/net X-SVN-Commit-Revision: 359010 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Mar 2020 08:44:47 -0000 Author: kp Date: Mon Mar 16 08:44:46 2020 New Revision: 359010 URL: https://svnweb.freebsd.org/changeset/base/359010 Log: bridge tests: Basic span test Reviewed by: philip, emaste (previous version) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D23961 Modified: head/tests/sys/net/if_bridge_test.sh Modified: head/tests/sys/net/if_bridge_test.sh ============================================================================== --- head/tests/sys/net/if_bridge_test.sh Sun Mar 15 21:47:16 2020 (r359009) +++ head/tests/sys/net/if_bridge_test.sh Mon Mar 16 08:44:46 2020 (r359010) @@ -191,9 +191,64 @@ static_cleanup() vnet_cleanup } +atf_test_case "span" "cleanup" +span_head() +{ + atf_set descr 'Bridge span test' + atf_set require.user root +} + +span_body() +{ + set -x + vnet_init + + epair=$(vnet_mkepair) + epair_span=$(vnet_mkepair) + bridge=$(vnet_mkbridge) + + vnet_mkjail one ${bridge} ${epair}a ${epair_span}a + + ifconfig ${epair}b up + ifconfig ${epair_span}b up + + jexec one ifconfig ${bridge} up + jexec one ifconfig ${epair}a up + jexec one ifconfig ${epair_span}a up + jexec one ifconfig ${bridge} addm ${epair}a + + jexec one ifconfig ${bridge} span ${epair_span}a + jexec one ifconfig ${bridge} 192.0.2.1/24 + + # Send some traffic through the span + jexec one ping -c 1 -t 1 192.0.2.2 + + # Check that we see the traffic on the span interface + atf_check -s exit:0 \ + $(atf_get_srcdir)/../netpfil/common/pft_ping.py \ + --sendif ${epair}b \ + --to 192.0.2.2 \ + --recvif ${epair_span}b + + jexec one ifconfig ${bridge} -span ${epair_span}a + + # And no more traffic after we remove the span + atf_check -s exit:1 \ + $(atf_get_srcdir)/../netpfil/common/pft_ping.py \ + --sendif ${epair}b \ + --to 192.0.2.2 \ + --recvif ${epair_span}b +} + +span_cleanup() +{ + vnet_cleanup +} + atf_init_test_cases() { atf_add_test_case "bridge_transmit_ipv4_unicast" atf_add_test_case "stp" atf_add_test_case "static" + atf_add_test_case "span" } From owner-svn-src-head@freebsd.org Mon Mar 16 11:55:37 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id BEEA9263ED5; Mon, 16 Mar 2020 11:55:37 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from zxy.spb.ru (zxy.spb.ru [195.70.199.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48gvrR4cMJz3JPL; Mon, 16 Mar 2020 11:55:35 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from slw by zxy.spb.ru with local (Exim 4.86 (FreeBSD)) (envelope-from ) id 1jDoL9-0001wD-Ew; Mon, 16 Mar 2020 14:55:27 +0300 Date: Mon, 16 Mar 2020 14:55:27 +0300 From: Slawa Olhovchenkov To: Patrick Kelsey Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r358995 - head/sys/net Message-ID: <20200316115527.GL8028@zxy.spb.ru> References: <202003141943.02EJhixQ093985@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202003141943.02EJhixQ093985@repo.freebsd.org> User-Agent: Mutt/1.5.24 (2015-08-30) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: slw@zxy.spb.ru X-SA-Exim-Scanned: No (on zxy.spb.ru); SAEximRunCond expanded to false X-Rspamd-Queue-Id: 48gvrR4cMJz3JPL X-Spamd-Bar: + Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=none (mx1.freebsd.org: domain of slw@zxy.spb.ru has no SPF policy when checking 195.70.199.98) smtp.mailfrom=slw@zxy.spb.ru X-Spamd-Result: default: False [1.65 / 15.00]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain]; RCVD_TLS_LAST(0.00)[]; DMARC_NA(0.00)[zxy.spb.ru]; TO_DN_SOME(0.00)[]; NEURAL_SPAM_MEDIUM(0.14)[0.143,0]; AUTH_NA(1.00)[]; IP_SCORE(0.08)[asn: 5495(0.38), country: RU(0.01)]; NEURAL_SPAM_LONG(0.53)[0.530,0]; R_SPF_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:5495, ipnet:195.70.192.0/19, country:RU]; MID_RHS_MATCH_FROM(0.00)[]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Mar 2020 11:55:37 -0000 On Sat, Mar 14, 2020 at 07:43:44PM +0000, Patrick Kelsey wrote: > Author: pkelsey > Date: Sat Mar 14 19:43:44 2020 > New Revision: 358995 > URL: https://svnweb.freebsd.org/changeset/base/358995 > > Log: > Fix iflib freelist state corruption > > This fixes a bug in iflib freelist management that breaks the required > correspondence between freelist indexes and driver ring slots. > > PR: 243126, 243392, 240628 Are you sure? Bug 240628 - sysutils/zfsnap2: Completion script link for zsh has wrong path > Reported by: avg, alexandr.oleynikov@gmail.com, Harald Schmalzbauer > Reviewed by: avg, gallatin > MFC after: 1 week > Differential Revision: https://reviews.freebsd.org/D23943 Very interesting. Is this related to my problem? I am have trouble w/ netmap: 1. netmap reported RX slots filled all ring (tail == head-1) 2. application processed all RX slots and reported to nemap (head == tail) 3. RX stuck. workaround: report on step 2 head = tail-1 (one RX slots left unprocessed). Also I am have trouble w/ TX, similar. From owner-svn-src-head@freebsd.org Mon Mar 16 12:33:58 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id BB8CA265A11; Mon, 16 Mar 2020 12:33:58 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48gwhk3dfCz4Ccr; Mon, 16 Mar 2020 12:33:58 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6BCA6208F1; Mon, 16 Mar 2020 12:33:58 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02GCXwsN070769; Mon, 16 Mar 2020 12:33:58 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02GCXwMD070768; Mon, 16 Mar 2020 12:33:58 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <202003161233.02GCXwMD070768@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Mon, 16 Mar 2020 12:33:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359014 - head/sys/ofed/drivers/infiniband/ulp/ipoib X-SVN-Group: head X-SVN-Commit-Author: hselasky X-SVN-Commit-Paths: head/sys/ofed/drivers/infiniband/ulp/ipoib X-SVN-Commit-Revision: 359014 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Mar 2020 12:33:58 -0000 Author: hselasky Date: Mon Mar 16 12:33:57 2020 New Revision: 359014 URL: https://svnweb.freebsd.org/changeset/base/359014 Log: Fix for double unlock in ipoib. The ipoib_unicast_send() function is not supposed to unlock the priv lock. MFC after: 3 days Sponsored by: Mellanox Technologies Modified: head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c Modified: head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c ============================================================================== --- head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c Mon Mar 16 11:42:03 2020 (r359013) +++ head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c Mon Mar 16 12:33:57 2020 (r359014) @@ -731,7 +731,6 @@ ipoib_unicast_send(struct mbuf *mb, struct ipoib_dev_p } if (!path->query && path_rec_start(priv, path)) { - spin_unlock_irqrestore(&priv->lock, flags); if (new_path) ipoib_path_free(priv, path); return; From owner-svn-src-head@freebsd.org Mon Mar 16 13:46:43 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id B6E90266D18; Mon, 16 Mar 2020 13:46:43 +0000 (UTC) (envelope-from pkelsey@gmail.com) Received: from mail-io1-f48.google.com (mail-io1-f48.google.com [209.85.166.48]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48gyJc4F2qz3Nl5; Mon, 16 Mar 2020 13:46:40 +0000 (UTC) (envelope-from pkelsey@gmail.com) Received: by mail-io1-f48.google.com with SMTP id h131so17196311iof.1; Mon, 16 Mar 2020 06:46:40 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ceEJnNFoeHcdoqoNMp3EVLqaBMfP/Xg0qWnfouvdXUo=; b=Yctv4NQu0zY1ahvJJbiKMvE0o/awj/7seFAFQV15/frE/5tXdQ6UVIQeihqBGNS7OF FGpjWmVRNIFLlFtnjaJol2tHyc2SXFffUD/4FKl+wawzgPovuKHRVOUkj0wn4vGCoVcW UGObJ4wM9c34s8tyQzEAsWvxcRtzVDXaE8gfiGI2tLEDNVz2as1z12Q1XRuZyh7CgPnE O73OBDL/jUULswhxJ2dQo8/h1xpaLziqjGVhpE3iMSOI67J+VZ4qZ7EVkCJyQooCvTL5 Uyfs/pqHcyb3HVrtwA1P0ksI8vC1bDrYeksAKn93dzmvngk0fHXNozFbfRMcdzC2wnDd S0Jg== X-Gm-Message-State: ANhLgQ3FE8mxmaOSMgWcaILJ6mOXJ3KmhEbqk0c7Ce7+vdizfFL6Bn+Y gUDhm5xLxB+ALTs260/YiubrjjzriD0M1e9nJHLtsw== X-Google-Smtp-Source: ADFU+vsq2UbJoPyBDXjSmtySUm3WMjgKUrq5yEd7LPlsKtnnO9gSkcw4SiPF8yr+R5H1PQflKotF//NGuXnAo43sFEs= X-Received: by 2002:a6b:e806:: with SMTP id f6mr23939658ioh.52.1584366398905; Mon, 16 Mar 2020 06:46:38 -0700 (PDT) MIME-Version: 1.0 References: <202003141943.02EJhixQ093985@repo.freebsd.org> <20200316115527.GL8028@zxy.spb.ru> In-Reply-To: <20200316115527.GL8028@zxy.spb.ru> From: Patrick Kelsey Date: Mon, 16 Mar 2020 09:46:27 -0400 Message-ID: Subject: Re: svn commit: r358995 - head/sys/net To: Slawa Olhovchenkov Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org X-Rspamd-Queue-Id: 48gyJc4F2qz3Nl5 X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of pkelsey@gmail.com designates 209.85.166.48 as permitted sender) smtp.mailfrom=pkelsey@gmail.com X-Spamd-Result: default: False [-4.24 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; RCVD_TLS_ALL(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; DMARC_NA(0.00)[freebsd.org]; TO_DN_SOME(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[48.166.85.209.list.dnswl.org : 127.0.5.0]; IP_SCORE(-2.24)[ip: (-6.54), ipnet: 209.85.128.0/17(-2.97), asn: 15169(-1.65), country: US(-0.05)]; FORGED_SENDER(0.30)[pkelsey@freebsd.org,pkelsey@gmail.com]; RWL_MAILSPIKE_POSSIBLE(0.00)[48.166.85.209.rep.mailspike.net : 127.0.0.17]; MIME_TRACE(0.00)[0:+,1:+,2:~]; R_DKIM_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; FROM_NEQ_ENVFROM(0.00)[pkelsey@freebsd.org,pkelsey@gmail.com]; RCVD_COUNT_TWO(0.00)[2] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Mar 2020 13:46:43 -0000 On Mon, Mar 16, 2020 at 7:55 AM Slawa Olhovchenkov wrote: > On Sat, Mar 14, 2020 at 07:43:44PM +0000, Patrick Kelsey wrote: > > > Author: pkelsey > > Date: Sat Mar 14 19:43:44 2020 > > New Revision: 358995 > > URL: https://svnweb.freebsd.org/changeset/base/358995 > > > > Log: > > Fix iflib freelist state corruption > > > > This fixes a bug in iflib freelist management that breaks the required > > correspondence between freelist indexes and driver ring slots. > > > > PR: 243126, 243392, 240628 > > Are you sure? > Bug 240628 - sysutils/zfsnap2: Completion script link for zsh has > wrong path > > Unfortunately, that should be 240608, not 240628. > > Reported by: avg, alexandr.oleynikov@gmail.com, Harald > Schmalzbauer > > Reviewed by: avg, gallatin > > MFC after: 1 week > > Differential Revision: https://reviews.freebsd.org/D23943 > > Very interesting. > Is this related to my problem? > I am have trouble w/ netmap: > > 1. netmap reported RX slots filled all ring (tail == head-1) > 2. application processed all RX slots and reported to nemap (head == tail) > 3. RX stuck. > > workaround: report on step 2 head = tail-1 (one RX slots left > unprocessed). > > Also I am have trouble w/ TX, similar. > This commit changes code that netmap does not use. netmap freelist refill is handled via netmap_fl_refill() in iflib.c, and that was not examined as part of this work. -Patrick From owner-svn-src-head@freebsd.org Mon Mar 16 13:53:31 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 8AA3226704A; Mon, 16 Mar 2020 13:53:31 +0000 (UTC) (envelope-from alfredo@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48gySV1x4Rz42TT; Mon, 16 Mar 2020 13:53:30 +0000 (UTC) (envelope-from alfredo@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A91F121773; Mon, 16 Mar 2020 13:53:29 +0000 (UTC) (envelope-from alfredo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02GDrT1w018237; Mon, 16 Mar 2020 13:53:29 GMT (envelope-from alfredo@FreeBSD.org) Received: (from alfredo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02GDrTuJ018236; Mon, 16 Mar 2020 13:53:29 GMT (envelope-from alfredo@FreeBSD.org) Message-Id: <202003161353.02GDrTuJ018236@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: alfredo set sender to alfredo@FreeBSD.org using -f From: "Alfredo Dal'Ava Junior" Date: Mon, 16 Mar 2020 13:53:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359015 - head/sys/dev/usb/input X-SVN-Group: head X-SVN-Commit-Author: alfredo X-SVN-Commit-Paths: head/sys/dev/usb/input X-SVN-Commit-Revision: 359015 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Mar 2020 13:53:31 -0000 Author: alfredo Date: Mon Mar 16 13:53:29 2020 New Revision: 359015 URL: https://svnweb.freebsd.org/changeset/base/359015 Log: atp: fix mouse attachment on PowerBook5,6 (G4) Skip device mode switch step on Fountain-based devices as they don't support RAW_SENSOR_MODE command, so failing to attach. This was reproduced on PowerBook G4 (model PowerBook5,6) equipped with product ID 0x020e Reviewed by: hselasky Approved by: jhibbits (mentor) Differential Revision: https://reviews.freebsd.org/D24005 Modified: head/sys/dev/usb/input/atp.c Modified: head/sys/dev/usb/input/atp.c ============================================================================== --- head/sys/dev/usb/input/atp.c Mon Mar 16 12:33:57 2020 (r359014) +++ head/sys/dev/usb/input/atp.c Mon Mar 16 13:53:29 2020 (r359015) @@ -2219,6 +2219,9 @@ atp_attach(device_t dev) return (ENXIO); } + di = USB_GET_DRIVER_INFO(uaa); + sc->sc_family = DECODE_FAMILY_FROM_DRIVER_INFO(di); + /* * By default the touchpad behaves like an HID device, sending * packets with reportID = 2. Such reports contain only @@ -2227,17 +2230,18 @@ atp_attach(device_t dev) * sensors. The device input mode can be switched from HID * reports to raw sensor data using vendor-specific USB * control commands. + * FOUNTAIN devices will give an error when trying to switch + * input mode, so we skip this command */ - if ((err = atp_set_device_mode(sc, RAW_SENSOR_MODE)) != 0) { + if ((sc->sc_family == TRACKPAD_FAMILY_FOUNTAIN_GEYSER) && + (DECODE_PRODUCT_FROM_DRIVER_INFO(di) == FOUNTAIN)) + DPRINTF("device mode switch skipped: Fountain device\n"); + else if ((err = atp_set_device_mode(sc, RAW_SENSOR_MODE)) != 0) { DPRINTF("failed to set mode to 'RAW_SENSOR' (%d)\n", err); return (ENXIO); } mtx_init(&sc->sc_mutex, "atpmtx", NULL, MTX_DEF | MTX_RECURSE); - - di = USB_GET_DRIVER_INFO(uaa); - - sc->sc_family = DECODE_FAMILY_FROM_DRIVER_INFO(di); switch(sc->sc_family) { case TRACKPAD_FAMILY_FOUNTAIN_GEYSER: From owner-svn-src-head@freebsd.org Mon Mar 16 14:03:28 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 2D903267421; Mon, 16 Mar 2020 14:03:28 +0000 (UTC) (envelope-from gallatin@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48gygz6J8bz4BmY; Mon, 16 Mar 2020 14:03:27 +0000 (UTC) (envelope-from gallatin@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D37A1219A5; Mon, 16 Mar 2020 14:03:27 +0000 (UTC) (envelope-from gallatin@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02GE3RUw024203; Mon, 16 Mar 2020 14:03:27 GMT (envelope-from gallatin@FreeBSD.org) Received: (from gallatin@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02GE3Rse024202; Mon, 16 Mar 2020 14:03:27 GMT (envelope-from gallatin@FreeBSD.org) Message-Id: <202003161403.02GE3Rse024202@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gallatin set sender to gallatin@FreeBSD.org using -f From: Andrew Gallatin Date: Mon, 16 Mar 2020 14:03:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359016 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: gallatin X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 359016 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Mar 2020 14:03:28 -0000 Author: gallatin Date: Mon Mar 16 14:03:27 2020 New Revision: 359016 URL: https://svnweb.freebsd.org/changeset/base/359016 Log: Avoid a cache miss accessing an mbuf ext_pgs pointer when doing SW kTLS. For a Netflix 90Gb/s 100% TLS software kTLS workload, this reduces the CPI of tcp_m_copym() from ~3.5 to ~2.5 as reported by vtune. Reviewed by: jtl, rrs Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D23998 Modified: head/sys/netinet/tcp_output.c Modified: head/sys/netinet/tcp_output.c ============================================================================== --- head/sys/netinet/tcp_output.c Mon Mar 16 13:53:29 2020 (r359015) +++ head/sys/netinet/tcp_output.c Mon Mar 16 14:03:27 2020 (r359016) @@ -1907,7 +1907,7 @@ tcp_m_copym(struct mbuf *m, int32_t off0, int32_t *ple top = NULL; pkthdrlen = NULL; #ifdef KERN_TLS - if (m->m_flags & M_NOMAP) + if (hw_tls && (m->m_flags & M_NOMAP)) tls = m->m_ext.ext_pgs->tls; else tls = NULL; From owner-svn-src-head@freebsd.org Mon Mar 16 16:17:59 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id C4DAC269D66; Mon, 16 Mar 2020 16:17:59 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48h1gC3FVxz4SKt; Mon, 16 Mar 2020 16:17:59 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id CA7E723179; Mon, 16 Mar 2020 16:17:58 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02GGHwxT001560; Mon, 16 Mar 2020 16:17:58 GMT (envelope-from trasz@FreeBSD.org) Received: (from trasz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02GGHwEM001559; Mon, 16 Mar 2020 16:17:58 GMT (envelope-from trasz@FreeBSD.org) Message-Id: <202003161617.02GGHwEM001559@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: trasz set sender to trasz@FreeBSD.org using -f From: Edward Tomasz Napierala Date: Mon, 16 Mar 2020 16:17:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359017 - head/sys/fs/autofs X-SVN-Group: head X-SVN-Commit-Author: trasz X-SVN-Commit-Paths: head/sys/fs/autofs X-SVN-Commit-Revision: 359017 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Mar 2020 16:17:59 -0000 Author: trasz Date: Mon Mar 16 16:17:58 2020 New Revision: 359017 URL: https://svnweb.freebsd.org/changeset/base/359017 Log: Make autofs(5) timeout messages include affected process name and PID. MFC after: 2 weeks Sponsored by: DARPA, AFRL Modified: head/sys/fs/autofs/autofs.c Modified: head/sys/fs/autofs/autofs.c ============================================================================== --- head/sys/fs/autofs/autofs.c Mon Mar 16 14:03:27 2020 (r359016) +++ head/sys/fs/autofs/autofs.c Mon Mar 16 16:17:58 2020 (r359017) @@ -468,8 +468,9 @@ autofs_trigger_one(struct autofs_node *anp, request_error = ar->ar_error; if (request_error != 0) { - AUTOFS_WARN("request for %s completed with error %d", - ar->ar_path, request_error); + AUTOFS_WARN("request for %s completed with error %d, " + "pid %d (%s)", ar->ar_path, request_error, + curproc->p_pid, curproc->p_comm); } wildcards = ar->ar_wildcards; From owner-svn-src-head@freebsd.org Mon Mar 16 19:03:11 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7209B26CEB9; Mon, 16 Mar 2020 19:03:11 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48h5Kq2QlTz3LVP; Mon, 16 Mar 2020 19:03:11 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4DC1725127; Mon, 16 Mar 2020 19:03:11 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02GJ3BsU002791; Mon, 16 Mar 2020 19:03:11 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02GJ3BhB002790; Mon, 16 Mar 2020 19:03:11 GMT (envelope-from mav@FreeBSD.org) Message-Id: <202003161903.02GJ3BhB002790@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 16 Mar 2020 19:03:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359018 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: head X-SVN-Commit-Author: mav X-SVN-Commit-Paths: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Commit-Revision: 359018 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Mar 2020 19:03:11 -0000 Author: mav Date: Mon Mar 16 19:03:10 2020 New Revision: 359018 URL: https://svnweb.freebsd.org/changeset/base/359018 Log: Fix infinite scan on a pool with only special allocations Attempt to run scrub or resilver on a new pool containing only special allocations (special vdev added on creation) caused infinite loop because of dsl_scan_should_clear() limiting memory usage to 5% of pool size, which it calculated accounting only normal allocation class. Addition of special and just in case dedup classes fixes the issue. Reviewed-by: Brian Behlendorf Signed-off-by: Alexander Motin Sponsored-By: iXsystems, Inc. Closes #10106 Closes #8694 openzfs/zfs@fa130e010c2ff9b33aba11d2699b667e454b3ccb Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c Mon Mar 16 16:17:58 2020 (r359017) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c Mon Mar 16 19:03:10 2020 (r359018) @@ -1105,10 +1105,13 @@ scan_ds_queue_sync(dsl_scan_t *scn, dmu_tx_t *tx) static boolean_t dsl_scan_should_clear(dsl_scan_t *scn) { + spa_t *spa = scn->scn_dp->dp_spa; vdev_t *rvd = scn->scn_dp->dp_spa->spa_root_vdev; - uint64_t mlim_hard, mlim_soft, mused; - uint64_t alloc = metaslab_class_get_alloc(spa_normal_class( - scn->scn_dp->dp_spa)); + uint64_t alloc, mlim_hard, mlim_soft, mused; + + alloc = metaslab_class_get_alloc(spa_normal_class(spa)); + alloc += metaslab_class_get_alloc(spa_special_class(spa)); + alloc += metaslab_class_get_alloc(spa_dedup_class(spa)); mlim_hard = MAX((physmem / zfs_scan_mem_lim_fact) * PAGESIZE, zfs_scan_mem_lim_min); From owner-svn-src-head@freebsd.org Mon Mar 16 22:25:26 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 568D1271D9E; Mon, 16 Mar 2020 22:25:26 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48h9qB0XVwz4Wrt; Mon, 16 Mar 2020 22:25:26 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8C123275FE; Mon, 16 Mar 2020 22:25:25 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02GMPP24022424; Mon, 16 Mar 2020 22:25:25 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02GMPPZS022423; Mon, 16 Mar 2020 22:25:25 GMT (envelope-from cem@FreeBSD.org) Message-Id: <202003162225.02GMPPZS022423@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Mon, 16 Mar 2020 22:25:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359022 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 359022 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Mar 2020 22:25:26 -0000 Author: cem Date: Mon Mar 16 22:25:25 2020 New Revision: 359022 URL: https://svnweb.freebsd.org/changeset/base/359022 Log: Remove misleading / redundant bzero in callout_callwheel_init The intent seems to be zeroing all of the cc_cpu array, or its singleton on such platforms. The assumption made is that the BSP is always zero. The code smell was introduced in r326218, which changed the prior explicit zero to 'curcpu'. The change is only valid if curcpu continues to be zero, contrary to the aim expressed in that commit message. So, more succinctly, the expression could be: memset(cc_cpu,0,sizeof(cc_cpu)). However, there's no point. cc_cpu lives in the data section and has a zero initial value already. So this revision just removes the problematic statement. No functional change. Appeases a (false positive, ish) Coverity CID. CID: 1383567 Reported by: Puneeth Jothaiah Reviewed by: kib Sponsored by: Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D24089 Modified: head/sys/kern/kern_timeout.c Modified: head/sys/kern/kern_timeout.c ============================================================================== --- head/sys/kern/kern_timeout.c Mon Mar 16 21:12:46 2020 (r359021) +++ head/sys/kern/kern_timeout.c Mon Mar 16 22:25:25 2020 (r359022) @@ -285,7 +285,6 @@ callout_callwheel_init(void *dummy) * XXX: Clip callout to result of previous function of maxusers * maximum 384. This is still huge, but acceptable. */ - memset(CC_CPU(curcpu), 0, sizeof(cc_cpu)); ncallout = imin(16 + maxproc + maxfiles, 18508); TUNABLE_INT_FETCH("kern.ncallout", &ncallout); From owner-svn-src-head@freebsd.org Mon Mar 16 23:37:58 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 8EB74273A3C; Mon, 16 Mar 2020 23:37:58 +0000 (UTC) (envelope-from salvadore@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hCQt1sc9z4W62; Mon, 16 Mar 2020 23:37:58 +0000 (UTC) (envelope-from salvadore@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 19D99393; Mon, 16 Mar 2020 23:37:58 +0000 (UTC) (envelope-from salvadore@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02GNbv9Y064692; Mon, 16 Mar 2020 23:37:57 GMT (envelope-from salvadore@FreeBSD.org) Received: (from salvadore@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02GNbvKp064691; Mon, 16 Mar 2020 23:37:57 GMT (envelope-from salvadore@FreeBSD.org) Message-Id: <202003162337.02GNbvKp064691@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: salvadore set sender to salvadore@FreeBSD.org using -f From: Lorenzo Salvadore Date: Mon, 16 Mar 2020 23:37:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359028 - head/share/misc X-SVN-Group: head X-SVN-Commit-Author: salvadore X-SVN-Commit-Paths: head/share/misc X-SVN-Commit-Revision: 359028 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Mar 2020 23:37:58 -0000 Author: salvadore (ports committer) Date: Mon Mar 16 23:37:57 2020 New Revision: 359028 URL: https://svnweb.freebsd.org/changeset/base/359028 Log: Add tcberner as co-mentor for salvadore Approved by: gerald (mentor) Modified: head/share/misc/committers-ports.dot Modified: head/share/misc/committers-ports.dot ============================================================================== --- head/share/misc/committers-ports.dot Mon Mar 16 23:36:32 2020 (r359027) +++ head/share/misc/committers-ports.dot Mon Mar 16 23:37:57 2020 (r359028) @@ -743,6 +743,7 @@ tcberner -> kai tcberner -> lbartoletti tcberner -> pkubaj tcberner -> rigoletto +tcberner -> salvadore tcberner -> yuri thierry -> jadawin From owner-svn-src-head@freebsd.org Mon Mar 16 23:53:09 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 8ADF0273F01; Mon, 16 Mar 2020 23:53:09 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: from mail-pl1-x634.google.com (mail-pl1-x634.google.com [IPv6:2607:f8b0:4864:20::634]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hCmM14Mwz4Cv8; Mon, 16 Mar 2020 23:53:06 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: by mail-pl1-x634.google.com with SMTP id t3so8739879plz.9; Mon, 16 Mar 2020 16:53:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=0QYYQGsqMuWwhLQ0extNaqPVADTADANUnNtIlY2ctBk=; b=Uy4aCySA4i8R39PEatI3BHhL0gpmObLUZZQ18ezA/8yAuWdGPWSDxzo3NLT4aODwCk qsQXPUVGo6aCxUYhbTS5x/KtIduCRug//Mz2A9/1JGcgWpj9VcevY7Em/VczlBZXYWL1 9ECF2LSoSQBYfHMmViNdZk0lQhwa7dy7JBLF5baRVuq5lkU8v/QHxWTg+l7LlkvwEBIi llnMHENDDwfq7eK3X0UoN5JZ9tQ+hF7ARDpdVkGjikai25XZCbwctg+Br+1qi7Ue9W/z N8tE1v0s3nX6alZ2ds4whFu1zavInddmeVc2HtIk3Dg40EVQBnSEnV17wsAC/T1KGSxt lsUQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-disposition:in-reply-to; bh=0QYYQGsqMuWwhLQ0extNaqPVADTADANUnNtIlY2ctBk=; b=NZQM78MN4gcTUzDGjKi4ipZfKf3deK925fTu3QqM9sKXV++qyB8390Mmtlf+bJTMdb /xxN/uZLYPTSzqemWkT87RPzOvGS1GyN95D61mHv2lK4whWPR1ZoF9SYspRGiBq2m2Eb WXhYINg8Me8eai/Zw8fzxaMhhiQHu4JOOcaeQvkwu0SV0FOkvo/f9kwpVbLX89V1kUx5 YQyq3pZWxGfbJiYyydMWvJGG9COBx4w9Gw8Q+BRMLWAeSz/A1yYCmanzrgIULT9CjUPV ftFWpdCXU0rdOQhD+QqJ5mhBtuvLNiREox4rqAtYOQzs5uNsqICAQ8uy/MP7yrjfRGN1 iJUw== X-Gm-Message-State: ANhLgQ2R4x8HfwNnSJbPBfrSCDdHAHb/OAUELv2nthaOUbO/zULGyVwB +TY2L6vSHVwf7byTx+Wgm0RQVV+Z X-Google-Smtp-Source: ADFU+vszROCw0fJPhBx19wmaQWrR5aPOr5oDwjwpitxbTfVsBDOmIcCA2uEJflTKuodtTv3+rTIzWw== X-Received: by 2002:a17:902:d705:: with SMTP id w5mr1657716ply.68.1584402785257; Mon, 16 Mar 2020 16:53:05 -0700 (PDT) Received: from spy (d23-16-86-169.bchsia.telus.net. [23.16.86.169]) by smtp.gmail.com with ESMTPSA id 67sm891030pfe.168.2020.03.16.16.53.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Mar 2020 16:53:04 -0700 (PDT) Sender: Mark Johnston Date: Mon, 16 Mar 2020 19:52:59 -0400 From: Mark Johnston To: Chuck Silvers Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org, glebius@freebsd.org Subject: Re: svn commit: r358597 - head/sys/kern Message-ID: <20200316235259.GA7120@spy> References: <202003040022.0240Mpm6074186@repo.freebsd.org> <20200313234817.GA10027@spy> <20200316051329.GA4598@spathi.chuq.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200316051329.GA4598@spathi.chuq.com> X-Rspamd-Queue-Id: 48hCmM14Mwz4Cv8 X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20161025 header.b=Uy4aCySA; dmarc=none; spf=pass (mx1.freebsd.org: domain of markjdb@gmail.com designates 2607:f8b0:4864:20::634 as permitted sender) smtp.mailfrom=markjdb@gmail.com X-Spamd-Result: default: False [-4.15 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; MIME_TRACE(0.00)[0:+]; DMARC_NA(0.00)[freebsd.org]; RCPT_COUNT_FIVE(0.00)[5]; RCVD_COUNT_THREE(0.00)[3]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[gmail.com:+]; RCVD_IN_DNSWL_NONE(0.00)[4.3.6.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org : 127.0.5.0]; IP_SCORE(-2.45)[ip: (-8.71), ipnet: 2607:f8b0::/32(-1.85), asn: 15169(-1.65), country: US(-0.05)]; FORGED_SENDER(0.30)[markj@freebsd.org,markjdb@gmail.com]; RECEIVED_SPAMHAUS_PBL(0.00)[169.86.16.23.khpj7ygk5idzvmvt5x4ziurxhy.zen.dq.spamhaus.net : 127.0.0.11]; MID_RHS_NOT_FQDN(0.50)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; FROM_NEQ_ENVFROM(0.00)[markj@freebsd.org,markjdb@gmail.com]; RCVD_TLS_ALL(0.00)[] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Mar 2020 23:53:09 -0000 On Sun, Mar 15, 2020 at 10:13:29PM -0700, Chuck Silvers wrote: > On Fri, Mar 13, 2020 at 07:48:17PM -0400, Mark Johnston wrote: > > On Wed, Mar 04, 2020 at 12:22:51AM +0000, Chuck Silvers wrote: > > > Author: chs > > > Date: Wed Mar 4 00:22:50 2020 > > > New Revision: 358597 > > > URL: https://svnweb.freebsd.org/changeset/base/358597 > > > > > > Log: > > > if vm_pager_get_pages_async() returns an error, release the sfio->nios > > > refcount that we took earlier that represents the I/O that ended up > > > not being started. > > > > I think a larger bug is that getpages_async is not consistent about > > whether it invokes the completion callback in synchronous error cases. > > For instance, vop_stdgetpages_async() always calls it, as does > > ffs_getpages_async() when the filesystem fragment size is larger than > > the page size. But vnode_pager_generic_getpages() does not. So if one > > is using sendfile on a filesystem that does not implement > > getpages_async, an error will cause sendfile_swapin() to unbusy the > > input pages multiple times, and release the sfio refcount twice when it > > should be done just once. > > > ah yes, you're right. I was only looking at the path we actually hit. > > I think the simplest way to resolve this would be to change > vnode_pager_generic_getpages() in the async case to always > call the iodone callback and always return 0. (in the sync case > vnode_pager_generic_getpages() would continue to return an error code > if an error is encountered.) vm_pager_get_pages_async() could then > be changed to return void since after the avoid changes it would > always return 0. swap_pager_getpages_async() already always calls > the iodone callback but it would return void too after the above changes. Looking at the existing error handling in sendfile, I think there is a complication: in the case of a synchronous error, vn_sendfile() has to unwire the input pages; in the case of an asynchronous error, vn_sendfile() will have bound the pages to mbufs in the socket's send buffer, and the unwiring will happen in sendfile_free_mext() when the buffer is drained as a result of a connection abort. In other words, sendfile_iodone() has to be able to distinguish between synchronous and asynchronous error cases in order to correctly release resources, so the proposed solution doesn't seem quite sufficient. > If that is agreeable to you and Gleb then I'll make the changes. > > -Chuck From owner-svn-src-head@freebsd.org Tue Mar 17 03:32:13 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id D0938258806; Tue, 17 Mar 2020 03:32:13 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hJd95FSmz46p9; Tue, 17 Mar 2020 03:32:13 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id AF4333054; Tue, 17 Mar 2020 03:32:13 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02H3WDBn008662; Tue, 17 Mar 2020 03:32:13 GMT (envelope-from pkelsey@FreeBSD.org) Received: (from pkelsey@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02H3WDxk008661; Tue, 17 Mar 2020 03:32:13 GMT (envelope-from pkelsey@FreeBSD.org) Message-Id: <202003170332.02H3WDxk008661@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pkelsey set sender to pkelsey@FreeBSD.org using -f From: Patrick Kelsey Date: Tue, 17 Mar 2020 03:32:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359029 - head/sys/dev/vmware/vmxnet3 X-SVN-Group: head X-SVN-Commit-Author: pkelsey X-SVN-Commit-Paths: head/sys/dev/vmware/vmxnet3 X-SVN-Commit-Revision: 359029 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 03:32:13 -0000 Author: pkelsey Date: Tue Mar 17 03:32:13 2020 New Revision: 359029 URL: https://svnweb.freebsd.org/changeset/base/359029 Log: Restore power-of-2 queue count constraint from r290948 When vmx(4) was converted to an iflib driver in r343291, the power-of-2 queue count constraint was removed as it appeared that current implementations of the VMXNET3 virtual device no longer required that constraint. It turns out that some of the implementations still do, and on such systems, the device will fail to initialize when configured with a non-power-of-2 RX or TX queue count. PR: 237321 Reported by: ncrogers@gmail.com MFC after: 1 week Modified: head/sys/dev/vmware/vmxnet3/if_vmx.c Modified: head/sys/dev/vmware/vmxnet3/if_vmx.c ============================================================================== --- head/sys/dev/vmware/vmxnet3/if_vmx.c Mon Mar 16 23:37:57 2020 (r359028) +++ head/sys/dev/vmware/vmxnet3/if_vmx.c Tue Mar 17 03:32:13 2020 (r359029) @@ -321,6 +321,13 @@ vmxnet3_register(device_t dev) } static int +trunc_powerof2(int val) +{ + + return (1U << (fls(val) - 1)); +} + +static int vmxnet3_attach_pre(if_ctx_t ctx) { device_t dev; @@ -349,12 +356,16 @@ vmxnet3_attach_pre(if_ctx_t ctx) /* If 0, the iflib tunable was not set, so set to the default */ if (scctx->isc_nrxqsets == 0) scctx->isc_nrxqsets = VMXNET3_DEF_RX_QUEUES; + scctx->isc_nrxqsets = trunc_powerof2(scctx->isc_nrxqsets); scctx->isc_nrxqsets_max = min(VMXNET3_MAX_RX_QUEUES, mp_ncpus); + scctx->isc_nrxqsets_max = trunc_powerof2(scctx->isc_nrxqsets_max); /* If 0, the iflib tunable was not set, so set to the default */ if (scctx->isc_ntxqsets == 0) scctx->isc_ntxqsets = VMXNET3_DEF_TX_QUEUES; + scctx->isc_ntxqsets = trunc_powerof2(scctx->isc_ntxqsets); scctx->isc_ntxqsets_max = min(VMXNET3_MAX_TX_QUEUES, mp_ncpus); + scctx->isc_ntxqsets_max = trunc_powerof2(scctx->isc_ntxqsets_max); /* * Enforce that the transmit completion queue descriptor count is From owner-svn-src-head@freebsd.org Tue Mar 17 05:33:06 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id C7CB225B474; Tue, 17 Mar 2020 05:33:06 +0000 (UTC) (envelope-from kevlo@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hMJf2pdqz3yMC; Tue, 17 Mar 2020 05:33:06 +0000 (UTC) (envelope-from kevlo@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4DDC248C2; Tue, 17 Mar 2020 05:33:06 +0000 (UTC) (envelope-from kevlo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02H5X6tu080360; Tue, 17 Mar 2020 05:33:06 GMT (envelope-from kevlo@FreeBSD.org) Received: (from kevlo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02H5X6Iv080359; Tue, 17 Mar 2020 05:33:06 GMT (envelope-from kevlo@FreeBSD.org) Message-Id: <202003170533.02H5X6Iv080359@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevlo set sender to kevlo@FreeBSD.org using -f From: Kevin Lo Date: Tue, 17 Mar 2020 05:33:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359030 - head/share/man/man4 X-SVN-Group: head X-SVN-Commit-Author: kevlo X-SVN-Commit-Paths: head/share/man/man4 X-SVN-Commit-Revision: 359030 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 05:33:06 -0000 Author: kevlo Date: Tue Mar 17 05:33:05 2020 New Revision: 359030 URL: https://svnweb.freebsd.org/changeset/base/359030 Log: Convert to the standard section 4 SYNOPSIS layout. Modified: head/share/man/man4/tun.4 Modified: head/share/man/man4/tun.4 ============================================================================== --- head/share/man/man4/tun.4 Tue Mar 17 03:32:13 2020 (r359029) +++ head/share/man/man4/tun.4 Tue Mar 17 05:33:05 2020 (r359030) @@ -2,14 +2,26 @@ .\" $FreeBSD$ .\" Based on PR#2411 .\" -.Dd April 29, 2019 +.Dd March 17, 2020 .Dt TUN 4 .Os .Sh NAME .Nm tun .Nd tunnel software network interface .Sh SYNOPSIS -.Cd device tuntap +To compile this driver into the kernel, +place the following line in your +kernel configuration file: +.Bd -ragged -offset indent +.Cd "device tuntap" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following lines in +.Xr loader.conf 5 : +.Bd -literal -offset indent +if_tuntap_load="YES" +.Ed .Sh DESCRIPTION The .Nm From owner-svn-src-head@freebsd.org Tue Mar 17 09:12:48 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 3D89525F9B6; Tue, 17 Mar 2020 09:12:48 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hSB80tMqz45mR; Tue, 17 Mar 2020 09:12:48 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 18CD07073; Tue, 17 Mar 2020 09:12:48 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02H9ClPf011527; Tue, 17 Mar 2020 09:12:47 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02H9ClBG011526; Tue, 17 Mar 2020 09:12:47 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <202003170912.02H9ClBG011526@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Tue, 17 Mar 2020 09:12:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359031 - in head/sys/dev/usb: . serial X-SVN-Group: head X-SVN-Commit-Author: hselasky X-SVN-Commit-Paths: in head/sys/dev/usb: . serial X-SVN-Commit-Revision: 359031 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 09:12:48 -0000 Author: hselasky Date: Tue Mar 17 09:12:47 2020 New Revision: 359031 URL: https://svnweb.freebsd.org/changeset/base/359031 Log: Add new USB device ID to u3g driver. Submitted by: super_gromit@hotmail.com PR: 244798 MFC after: 3 days Sponsored by: Mellanox Technologies Modified: head/sys/dev/usb/serial/u3g.c head/sys/dev/usb/usbdevs Modified: head/sys/dev/usb/serial/u3g.c ============================================================================== --- head/sys/dev/usb/serial/u3g.c Tue Mar 17 05:33:05 2020 (r359030) +++ head/sys/dev/usb/serial/u3g.c Tue Mar 17 09:12:47 2020 (r359031) @@ -239,6 +239,8 @@ static const STRUCT_USB_HOST_ID u3g_devs[] = { U3G_DEV(DLINK, DWR510, 0), U3G_DEV(DLINK, DWM157_CD, U3GINIT_SCSIEJECT), U3G_DEV(DLINK, DWM157, 0), + U3G_DEV(DLINK, DWM157_CD_2, U3GINIT_SCSIEJECT), + U3G_DEV(DLINK, DWM157_2, 0), U3G_DEV(DLINK, DWM222_CD, U3GINIT_SCSIEJECT), U3G_DEV(DLINK, DWM222, 0), U3G_DEV(DLINK3, DWM652, 0), Modified: head/sys/dev/usb/usbdevs ============================================================================== --- head/sys/dev/usb/usbdevs Tue Mar 17 05:33:05 2020 (r359030) +++ head/sys/dev/usb/usbdevs Tue Mar 17 09:12:47 2020 (r359031) @@ -1735,8 +1735,10 @@ product DLINK DSB650TX3 0x400b 10/100 Ethernet product DLINK DSB650TX2 0x4102 10/100 Ethernet product DLINK DUB1312 0x4a00 10/100/1000 Ethernet product DLINK DWM157 0x7d02 DWM-157 +product DLINK DWM157_2 0x7d0e DWM-157 product DLINK DWR510 0x7e12 DWR-510 product DLINK DWM222 0x7e35 DWM-222 +product DLINK DWM157_CD_2 0xa407 DWM-157 CD-ROM Mode product DLINK DWM157_CD 0xa707 DWM-157 CD-ROM Mode product DLINK DWR510_CD 0xa805 DWR-510 CD-ROM Mode product DLINK DWM222_CD 0xab00 DWM-222 CD-ROM Mode From owner-svn-src-head@freebsd.org Tue Mar 17 10:02:59 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id C5923260F08; Tue, 17 Mar 2020 10:02:59 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hTJ34n0fz4SC6; Tue, 17 Mar 2020 10:02:59 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 862F879BE; Tue, 17 Mar 2020 10:02:59 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02HA2xEj041551; Tue, 17 Mar 2020 10:02:59 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02HA2xOY041550; Tue, 17 Mar 2020 10:02:59 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202003171002.02HA2xOY041550@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Tue, 17 Mar 2020 10:02:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359032 - head/usr.bin/units X-SVN-Group: head X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: head/usr.bin/units X-SVN-Commit-Revision: 359032 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 10:02:59 -0000 Author: 0mp (doc,ports committer) Date: Tue Mar 17 10:02:59 2020 New Revision: 359032 URL: https://svnweb.freebsd.org/changeset/base/359032 Log: Tell the world how to convert gigabytes to bytes with units(1) easily It turns out that units(1) is not as horrible to use in scripts as I initially thought. When the --terse flag is combined with an appropriate output format (set via --output-format), units(1) is actually capable of producing very nice results. For example: units -o %0.f -t '4 gigabytes' bytes is is just going to print out the expected value of 4294967296. There is no time to waste. People have to know about it. I am adding an example for this at the top of the examples section because this is what users are most likely looking for. Approved by: bcr (mentor) Differential Revision: https://reviews.freebsd.org/D24096 Modified: head/usr.bin/units/units.1 Modified: head/usr.bin/units/units.1 ============================================================================== --- head/usr.bin/units/units.1 Tue Mar 17 09:12:47 2020 (r359031) +++ head/usr.bin/units/units.1 Tue Mar 17 10:02:59 2020 (r359032) @@ -1,5 +1,5 @@ .\" $FreeBSD$ -.Dd February 3, 2020 +.Dd March 17, 2020 .Dt UNITS 1 .Os .Sh NAME @@ -232,8 +232,21 @@ The standard units file. .Ex -std .Sh EXAMPLES .Bl -tag -width 0n -.It Sy Example 1 : No Interactive usage +.It Sy Example 1 : No Simple conversion of units .Pp +This example shows how to do simple conversions, for example from gigabytes +to bytes: +.Bd -literal -offset 2n +.Li $ Ic units -o %0.f -t '4 gigabytes' bytes +4294967296 +.Ed +.Pp +The +.Fl o Cm %0.f +part of the command is required to print the result in a non-scientific +notation (e.g, 4294967296 instead of 4.29497e+09). +.It Sy Example 2 : No Interactive usage +.Pp Here is an example of an interactive session where the user is prompted for units: .Bd -literal -offset 2n @@ -261,7 +274,7 @@ units: .Li You want : Ic degC 29.444444 .Ed -.It Sy Example 2 : No Difference between Do Ic \&| Dc No and Do Ic / Dc No division +.It Sy Example 3 : No Difference between Do Ic \&| Dc No and Do Ic / Dc No division .Pp The following command shows how to convert half a meter to centimeters. .Bd -literal -offset 2n @@ -293,7 +306,7 @@ as .Dq Ic 0.5/meter , which is not conformable to .Dq Ic cm . -.It Sy Example 3 : No Simple units file +.It Sy Example 4 : No Simple units file Here is an example of a short units file that defines some basic units: .Pp @@ -307,7 +320,7 @@ units: .It "ft 12 inches" .It "mile 5280 ft" .El -.It Sy Example 4 : No Viewing units and conversions of the default units file +.It Sy Example 5 : No Viewing units and conversions of the default units file The following shell one-liner allows the user to view the contents of the default units file: .Bd -literal -offset 2n From owner-svn-src-head@freebsd.org Tue Mar 17 11:59:41 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 305A7263034; Tue, 17 Mar 2020 11:59:41 +0000 (UTC) (envelope-from arichardson@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hWtj0LZPz4Mxl; Tue, 17 Mar 2020 11:59:41 +0000 (UTC) (envelope-from arichardson@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 047C68DDB; Tue, 17 Mar 2020 11:59:41 +0000 (UTC) (envelope-from arichardson@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02HBxe4e008053; Tue, 17 Mar 2020 11:59:40 GMT (envelope-from arichardson@FreeBSD.org) Received: (from arichardson@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02HBxeRp008052; Tue, 17 Mar 2020 11:59:40 GMT (envelope-from arichardson@FreeBSD.org) Message-Id: <202003171159.02HBxeRp008052@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: arichardson set sender to arichardson@FreeBSD.org using -f From: Alex Richardson Date: Tue, 17 Mar 2020 11:59:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359033 - head/sys/mips/nlm X-SVN-Group: head X-SVN-Commit-Author: arichardson X-SVN-Commit-Paths: head/sys/mips/nlm X-SVN-Commit-Revision: 359033 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 11:59:41 -0000 Author: arichardson Date: Tue Mar 17 11:59:40 2020 New Revision: 359033 URL: https://svnweb.freebsd.org/changeset/base/359033 Log: Fix build of XLP MIPS kernel with clang Clang does not recognize some of the GCC optimization options that are used to compile ucore_app.bin. This is required to switch MIPS to compile with LLVM by default (D23204). Reviewed By: imp Differential Revision: https://reviews.freebsd.org/D24092 Modified: head/sys/mips/nlm/files.xlp Modified: head/sys/mips/nlm/files.xlp ============================================================================== --- head/sys/mips/nlm/files.xlp Tue Mar 17 10:02:59 2020 (r359032) +++ head/sys/mips/nlm/files.xlp Tue Mar 17 11:59:40 2020 (r359033) @@ -23,7 +23,7 @@ mips/nlm/dev/net/sgmii.c optional xlpge mips/nlm/dev/net/xaui.c optional xlpge mips/nlm/dev/net/xlpge.c optional xlpge ucore_app.bin optional xlpge \ - compile-with "${CC} -EB -march=mips32 -mabi=32 -msoft-float -I. -I$S -O3 -funroll-loops -finline-limit=20000 -fno-tree-loop-optimize -fomit-frame-pointer -mno-branch-likely -fno-pic -mno-abicalls -ffunction-sections -fdata-sections -G0 -Wall -Werror -c $S/$M/nlm/dev/net/ucore/crt0_basic.S $S/$M/nlm/dev/net/ucore/ucore_app.c && ${LD} -melf32btsmip_fbsd -d -warn-common -T$S/$M/nlm/dev/net/ucore/ld.ucore.S crt0_basic.o ucore_app.o -o ucore_app && ${OBJCOPY} -S -O binary -R .note -R .comment ucore_app ${.TARGET}" \ + compile-with "${CC} -EB -march=mips32 -mabi=32 -msoft-float -I. -I$S -O3 -funroll-loops -fomit-frame-pointer -Qunused-arguments -mno-branch-likely -fno-pic -mno-abicalls -ffunction-sections -fdata-sections -G0 -Wall -Werror -c $S/$M/nlm/dev/net/ucore/crt0_basic.S $S/$M/nlm/dev/net/ucore/ucore_app.c && ${LD} -melf32btsmip_fbsd -d -warn-common -T$S/$M/nlm/dev/net/ucore/ld.ucore.S crt0_basic.o ucore_app.o -o ucore_app && ${OBJCOPY} -S -O binary -R .note -R .comment ucore_app ${.TARGET}" \ no-obj no-implicit-rule before-depend \ clean "crt0_basic.o ucore_app.o ucore_app ucore_app.bin" ucore_app_bin.h optional xlpge \ From owner-svn-src-head@freebsd.org Tue Mar 17 11:59:46 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 1DCB0263059; Tue, 17 Mar 2020 11:59:46 +0000 (UTC) (envelope-from arichardson@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hWtp02ySz4N33; Tue, 17 Mar 2020 11:59:46 +0000 (UTC) (envelope-from arichardson@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id EF7B88DDC; Tue, 17 Mar 2020 11:59:45 +0000 (UTC) (envelope-from arichardson@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02HBxj1b008107; Tue, 17 Mar 2020 11:59:45 GMT (envelope-from arichardson@FreeBSD.org) Received: (from arichardson@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02HBxjL5008106; Tue, 17 Mar 2020 11:59:45 GMT (envelope-from arichardson@FreeBSD.org) Message-Id: <202003171159.02HBxjL5008106@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: arichardson set sender to arichardson@FreeBSD.org using -f From: Alex Richardson Date: Tue, 17 Mar 2020 11:59:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359034 - head/sys/contrib/octeon-sdk X-SVN-Group: head X-SVN-Commit-Author: arichardson X-SVN-Commit-Paths: head/sys/contrib/octeon-sdk X-SVN-Commit-Revision: 359034 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 11:59:46 -0000 Author: arichardson Date: Tue Mar 17 11:59:45 2020 New Revision: 359034 URL: https://svnweb.freebsd.org/changeset/base/359034 Log: Fix misleading indentation warning in OCTEON1 kernel This is required to switch MIPS to compile with LLVM by default (D23204). Reviewed By: brooks Differential Revision: https://reviews.freebsd.org/D24091 Modified: head/sys/contrib/octeon-sdk/cvmx-dpi-defs.h Modified: head/sys/contrib/octeon-sdk/cvmx-dpi-defs.h ============================================================================== --- head/sys/contrib/octeon-sdk/cvmx-dpi-defs.h Tue Mar 17 11:59:40 2020 (r359033) +++ head/sys/contrib/octeon-sdk/cvmx-dpi-defs.h Tue Mar 17 11:59:45 2020 (r359034) @@ -408,11 +408,12 @@ static inline uint64_t CVMX_DPI_SLI_PRTX_ERR(unsigned case OCTEON_CN68XX & OCTEON_FAMILY_MASK: if (OCTEON_IS_MODEL(OCTEON_CN68XX_PASS1)) - if ((offset <= 1)) - return CVMX_ADD_IO_SEG(0x0001DF0000000928ull) + ((offset) & 1) * 8; + if ((offset <= 1)) + return CVMX_ADD_IO_SEG(0x0001DF0000000928ull) + ((offset) & 1) * 8; if (OCTEON_IS_MODEL(OCTEON_CN68XX_PASS2)) + if ((offset <= 1)) + return CVMX_ADD_IO_SEG(0x0001DF0000000920ull) + ((offset) & 1) * 8; if ((offset <= 1)) - return CVMX_ADD_IO_SEG(0x0001DF0000000920ull) + ((offset) & 1) * 8; if ((offset <= 1)) return CVMX_ADD_IO_SEG(0x0001DF0000000920ull) + ((offset) & 1) * 8; break; case OCTEON_CN63XX & OCTEON_FAMILY_MASK: From owner-svn-src-head@freebsd.org Tue Mar 17 12:16:28 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 67955264325 for ; Tue, 17 Mar 2020 12:16:28 +0000 (UTC) (envelope-from junchoon@dec.sakura.ne.jp) Received: from dec.sakura.ne.jp (dec.sakura.ne.jp [210.188.226.8]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48hXG05lqRz4YxW for ; Tue, 17 Mar 2020 12:16:24 +0000 (UTC) (envelope-from junchoon@dec.sakura.ne.jp) Received: from kalamity.joker.local (124-18-96-116.dz.commufa.jp [124.18.96.116]) (authenticated bits=0) by dec.sakura.ne.jp (8.15.2/8.15.2/[SAKURA-WEB]/20080708) with ESMTPA id 02HCGF34070017; Tue, 17 Mar 2020 21:16:15 +0900 (JST) (envelope-from junchoon@dec.sakura.ne.jp) Date: Tue, 17 Mar 2020 21:16:14 +0900 From: Tomoaki AOKI To: Toomas Soome Cc: svn-src-head@freebsd.org Subject: Re: svn commit: r358989 - in head/stand/efi: libefi loader loader/arch/arm loader/arch/arm64 Message-Id: <20200317211614.bbe1b18a32d7863941fffbe8@dec.sakura.ne.jp> In-Reply-To: <746EE981-536F-49AD-9B76-F9F103ECB1F9@me.com> References: <20200316001745.07df62f72d647b924b657d86@dec.sakura.ne.jp> <746EE981-536F-49AD-9B76-F9F103ECB1F9@me.com> Reply-To: junchoon@dec.sakura.ne.jp Organization: Junchoon corps X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.32; amd64-portbld-freebsd12.1) Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 48hXG05lqRz4YxW X-Spamd-Bar: +++++ Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=none (mx1.freebsd.org: domain of junchoon@dec.sakura.ne.jp has no SPF policy when checking 210.188.226.8) smtp.mailfrom=junchoon@dec.sakura.ne.jp X-Spamd-Result: default: False [5.18 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; HAS_REPLYTO(0.00)[junchoon@dec.sakura.ne.jp]; TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; REPLYTO_ADDR_EQ_FROM(0.00)[]; HAS_ORG_HEADER(0.00)[]; RCPT_COUNT_TWO(0.00)[2]; FREEMAIL_TO(0.00)[me.com]; RECEIVED_SPAMHAUS_PBL(0.00)[116.96.18.124.khpj7ygk5idzvmvt5x4ziurxhy.zen.dq.spamhaus.net : 127.0.0.10]; RCVD_TLS_LAST(0.00)[]; R_DKIM_NA(0.00)[]; ASN(0.00)[asn:9370, ipnet:210.188.224.0/19, country:JP]; MIME_TRACE(0.00)[0:+]; MID_RHS_MATCH_FROM(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; MIME_GOOD(-0.10)[text/plain]; IP_SCORE(1.78)[ipnet: 210.188.224.0/19(4.95), asn: 9370(3.93), country: JP(0.04)]; DMARC_NA(0.00)[sakura.ne.jp]; AUTH_NA(1.00)[]; NEURAL_SPAM_MEDIUM(1.00)[1.000,0]; TO_MATCH_ENVRCPT_SOME(0.00)[]; NEURAL_SPAM_LONG(1.00)[1.000,0]; R_SPF_NA(0.00)[]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 12:16:28 -0000 Hi! Thanks for your respond. Unfortunately, no. I'm running on ThinkPad P52, which has no com connector installed. No USB serial interface connected. `efi-show -g global -v ConOut` on loader prompt shows global NV,BS,RS ConOut = PciRoot(0,0)/Pci((0x1,oxo)/Pci(0x0,0x0)/AcpiAdr(0x80010100) Moreover, my previous idea didn't help. Neither console="vidconsole" console="eficonsole" console="efi_console" nor console="efi" in /boot/loader.conf works. Defining / undefining TERM_EMU on build are untested. Is there any setting for /boot/loader.conf to control the behavior? Regards. On Mon, 16 Mar 2020 08:26:56 +0200 Toomas Soome wrote: > Hi! > > This means, your system has UART serial device $B".(B you can check this from loader prompt: efi-show -g global -v ConOut or with efivar from running system. This w ould trigger efi console driver to use TERM_EMU, which can be turned off by user and doing that would cause ESC sequences to be passed directly to console. Might that be true in your case? > > rgds, > toomas > > > On 15. Mar 2020, at 17:17, Tomoaki AOKI wrote: > > > > Hi. > > > > This broke loader menu display on efifb. At least on amd64. > > ESC sequences without ESC character are shown. > > Key input (at least 1, 2 and enter) works OK. > > I suspect outputs for SIO is sent to efifb and ESC codes are ignored. > > > > Reverting this fixes the issue. > > > > Not tried (not enough time for now as I'm mainly using stable/12), > > but possibly calling efi_cons_probe() from efi_cons_init() would be > > needed, as ome codes are moved from the latter to the former. > > > > > >> Author: tsoome > >> Date: Sat Mar 14 06:36:03 2020 > >> New Revision: 358989 > >> URL: https://svnweb.freebsd.org/changeset/base/358989 > >> > >> Log: > >> loader: add comconsole implementation on top of SIO protocol > >> > >> Provide comconsole on top of SIO for arm platforms (x86 does use bios > > version). > >> > >> Added: > >> head/stand/efi/loader/efiserialio.c (contents, props changed) > >> Modified: > >> head/stand/efi/libefi/efi_console.c > >> head/stand/efi/loader/arch/arm/Makefile.inc > >> head/stand/efi/loader/arch/arm64/Makefile.inc > >> head/stand/efi/loader/conf.c > >> head/stand/efi/loader/main.c > >> > >> Modified: head/stand/efi/libefi/efi_console.c > >> ============================================================================== > >> --- head/stand/efi/libefi/efi_console.c Sat Mar 14 05:57:22 > > 2020 (r358988) > >> +++ head/stand/efi/libefi/efi_console.c > > Sat Mar 14 06:36:03 2020 (r358989) > >> @@ -377,9 +377,22 @@ efi_cons_respond(void *s __unused, const void *buf __u > >> { > >> } > >> > >> +/* > >> + * Set up conin/conout/coninex to make sure we have input ready. > >> + */ > >> static void > >> efi_cons_probe(struct console *cp) > >> { > >> + EFI_STATUS status; > >> + > >> + conout = ST->ConOut; > >> + conin = ST->ConIn; > >> + > >> + status = BS->OpenProtocol(ST->ConsoleInHandle, > > &simple_input_ex_guid, > >> + (void **)&coninex, IH, NULL, > > EFI_OPEN_PROTOCOL_GET_PROTOCOL); > >> + if (status != EFI_SUCCESS) > >> + coninex = NULL; > >> + > >> cp->c_flags |= C_PRESENTIN | C_PRESENTOUT; > >> } > >> > >> @@ -889,15 +902,7 @@ efi_cons_init(int arg) > >> if (conin != NULL) > >> return (0); > >> > >> - conout = ST->ConOut; > >> - conin = ST->ConIn; > >> - > >> conout->EnableCursor(conout, TRUE); > >> - status = BS->OpenProtocol(ST->ConsoleInHandle, > > &simple_input_ex_guid, > >> - (void **)&coninex, IH, NULL, > > EFI_OPEN_PROTOCOL_GET_PROTOCOL); > >> - if (status != EFI_SUCCESS) > >> - coninex = NULL; > >> - > >> if (efi_cons_update_mode()) > >> return (0); > >> > >> > >> Modified: head/stand/efi/loader/arch/arm/Makefile.inc > >> ============================================================================== > >> --- head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 > > 05:57:22 2020 (r358988) > >> +++ head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 06:36:03 > > 2020 (r358989) > >> @@ -1,6 +1,7 @@ > >> # $FreeBSD$ > >> > >> SRCS+= exec.c \ > >> + efiserialio.c \ > >> start.S > >> > >> HAVE_FDT=yes > > > > (Snip) > > > >> @@ -930,7 +936,6 @@ main(int argc, CHAR16 *argv[]) > >> if (!has_kbd && (howto & RB_PROBE)) > >> howto |= RB_SERIAL | RB_MULTIPLE; > >> howto &= ~RB_PROBE; > >> - uhowto = parse_uefi_con_out(); > >> > >> /* > >> * Read additional environment variables from the boot device's > > > > -- > > Tomoaki AOKI > > -- Tomoaki AOKI From owner-svn-src-head@freebsd.org Tue Mar 17 14:12:20 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id A0F922679EF; Tue, 17 Mar 2020 14:12:20 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hZqm2GsXz4ZBg; Tue, 17 Mar 2020 14:12:20 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id E29C4A758; Tue, 17 Mar 2020 14:12:19 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02HECJqv091155; Tue, 17 Mar 2020 14:12:19 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02HECJkI091154; Tue, 17 Mar 2020 14:12:19 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003171412.02HECJkI091154@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Tue, 17 Mar 2020 14:12:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359035 - head X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head X-SVN-Commit-Revision: 359035 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 14:12:20 -0000 Author: emaste Date: Tue Mar 17 14:12:19 2020 New Revision: 359035 URL: https://svnweb.freebsd.org/changeset/base/359035 Log: Makefile.inc1: add a note when deleting stale dependencies We have ad-hoc stale dependency handling in Makefile.inc1 to handle the cases where file extensions change, but it appears that some cases are not functional. Add a note when about to clean stale deps to help when investigating failure reports. Sponsored by: The FreeBSD Foundation Modified: head/Makefile.inc1 Modified: head/Makefile.inc1 ============================================================================== --- head/Makefile.inc1 Tue Mar 17 11:59:45 2020 (r359034) +++ head/Makefile.inc1 Tue Mar 17 14:12:19 2020 (r359035) @@ -922,6 +922,7 @@ _sanity_check: .PHONY .MAKE # tree changes, particularly with respect to removing source files and # replacing generated files. Handle these cases here in an ad-hoc fashion. _cleanobj_fast_depend_hack: .PHONY + @echo ">>> Deleting stale dependencies..."; # Date SVN Rev Syscalls/Changes # 20200310 r358851 rename of openmp's ittnotify_static.c to .cpp .for f in ittnotify_static From owner-svn-src-head@freebsd.org Tue Mar 17 15:57:26 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4D3DC26A34B; Tue, 17 Mar 2020 15:57:26 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hd914hW2z3KXp; Tue, 17 Mar 2020 15:57:25 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 946D8B9C1; Tue, 17 Mar 2020 15:57:25 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02HFvPjT050880; Tue, 17 Mar 2020 15:57:25 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02HFvPIL050879; Tue, 17 Mar 2020 15:57:25 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003171557.02HFvPIL050879@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Tue, 17 Mar 2020 15:57:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359037 - head/sbin/ldconfig X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/sbin/ldconfig X-SVN-Commit-Revision: 359037 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 15:57:26 -0000 Author: emaste Date: Tue Mar 17 15:57:25 2020 New Revision: 359037 URL: https://svnweb.freebsd.org/changeset/base/359037 Log: ldconfig: add aout deprecation notice aout support in ldconfig hasn't been required since FreeBSD 2.x. Anyone still using FreeBSD 2 shared libraries can also use a FreeBSD 2 ldconfig to generate aout ldconfig hints. Sponsored by: The FreeBSD Foundation Modified: head/sbin/ldconfig/ldconfig.8 head/sbin/ldconfig/ldconfig.c Modified: head/sbin/ldconfig/ldconfig.8 ============================================================================== --- head/sbin/ldconfig/ldconfig.8 Tue Mar 17 14:59:24 2020 (r359036) +++ head/sbin/ldconfig/ldconfig.8 Tue Mar 17 15:57:25 2020 (r359037) @@ -29,7 +29,7 @@ .\" .\" $FreeBSD$ .\" -.Dd January 6, 2018 +.Dd March 17, 2020 .Dt LDCONFIG 8 .Os .Sh NAME @@ -111,6 +111,8 @@ Generate the hints for 32-bit ABI shared libraries on 64-bit systems that support running 32-bit binaries. .It Fl aout Generate the hints for a.out format shared libraries. +This option is deprecated and is not present in +.Fx 13 . .It Fl elf Generate the hints for ELF format shared libraries. .It Fl R Modified: head/sbin/ldconfig/ldconfig.c ============================================================================== --- head/sbin/ldconfig/ldconfig.c Tue Mar 17 14:59:24 2020 (r359036) +++ head/sbin/ldconfig/ldconfig.c Tue Mar 17 15:57:25 2020 (r359037) @@ -118,6 +118,7 @@ main(int argc, char **argv) while (argc > 1) { if (strcmp(argv[1], "-aout") == 0) { + warnx("aout support is deprecated"); is_aout = 1; argc--; argv++; From owner-svn-src-head@freebsd.org Tue Mar 17 16:42:26 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id F077926B693; Tue, 17 Mar 2020 16:42:26 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hf8x6Y6hz48by; Tue, 17 Mar 2020 16:42:25 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 86676C470; Tue, 17 Mar 2020 16:42:25 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02HGgPcK080051; Tue, 17 Mar 2020 16:42:25 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02HGgPxI080050; Tue, 17 Mar 2020 16:42:25 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003171642.02HGgPxI080050@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Tue, 17 Mar 2020 16:42:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359038 - head/usr.bin/ldd X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/usr.bin/ldd X-SVN-Commit-Revision: 359038 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 16:42:27 -0000 Author: emaste Date: Tue Mar 17 16:42:25 2020 New Revision: 359038 URL: https://svnweb.freebsd.org/changeset/base/359038 Log: ldd: add aout deprecation notice Reported by: kib Modified: head/usr.bin/ldd/ldd.c Modified: head/usr.bin/ldd/ldd.c ============================================================================== --- head/usr.bin/ldd/ldd.c Tue Mar 17 15:57:25 2020 (r359037) +++ head/usr.bin/ldd/ldd.c Tue Mar 17 16:42:25 2020 (r359038) @@ -311,6 +311,7 @@ is_executable(const char *fname, int fd, int *is_shlib return (0); } *type = TYPE_AOUT; + warnx("%s: aout support is deprecated", fname); return (1); } #endif From owner-svn-src-head@freebsd.org Tue Mar 17 17:28:14 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id D2E7826C79A; Tue, 17 Mar 2020 17:28:14 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hg9p4Fkjz3wjL; Tue, 17 Mar 2020 17:28:14 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D6182CBC8; Tue, 17 Mar 2020 17:28:13 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02HHSDsk005273; Tue, 17 Mar 2020 17:28:13 GMT (envelope-from brooks@FreeBSD.org) Received: (from brooks@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02HHSC4F005268; Tue, 17 Mar 2020 17:28:12 GMT (envelope-from brooks@FreeBSD.org) Message-Id: <202003171728.02HHSC4F005268@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: brooks set sender to brooks@FreeBSD.org using -f From: Brooks Davis Date: Tue, 17 Mar 2020 17:28:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359045 - in head: . lib lib/liblua libexec/flua share/mk X-SVN-Group: head X-SVN-Commit-Author: brooks X-SVN-Commit-Paths: in head: . lib lib/liblua libexec/flua share/mk X-SVN-Commit-Revision: 359045 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 17:28:14 -0000 Author: brooks Date: Tue Mar 17 17:28:12 2020 New Revision: 359045 URL: https://svnweb.freebsd.org/changeset/base/359045 Log: Add an internal liblua and use it in flua. The new liblua will be used in a forthcoming import of kyua. Reviewed by: kevans Obtained from: CheriBSD Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D24090 Added: head/lib/liblua/ head/lib/liblua/Makefile - copied, changed from r359037, head/libexec/flua/Makefile head/lib/liblua/luaconf.h - copied unchanged from r359044, head/libexec/flua/luaconf.h Deleted: head/libexec/flua/luaconf.h Modified: head/Makefile.inc1 head/lib/Makefile head/libexec/flua/Makefile head/share/mk/src.libnames.mk Modified: head/Makefile.inc1 ============================================================================== --- head/Makefile.inc1 Tue Mar 17 17:03:24 2020 (r359044) +++ head/Makefile.inc1 Tue Mar 17 17:28:12 2020 (r359045) @@ -2165,7 +2165,8 @@ ${_bt}-lib/libdwarf: ${_bt_m4_depend} # 13.0-CURRENT cycle, thus needs to be built on -older releases and stable # branches. .if ${BOOTSTRAPPING} < 1300059 -_flua= libexec/flua +${_bt}-libexec/flua: ${_bt}-lib/liblua +_flua= lib/liblua libexec/flua .endif # r245440 mtree -N support added Modified: head/lib/Makefile ============================================================================== --- head/lib/Makefile Tue Mar 17 17:03:24 2020 (r359044) +++ head/lib/Makefile Tue Mar 17 17:28:12 2020 (r359045) @@ -61,6 +61,7 @@ SUBDIR= ${SUBDIR_BOOTSTRAP} \ libjail \ libkiconv \ libkvm \ + liblua \ liblzma \ libmemstat \ libmd \ Copied and modified: head/lib/liblua/Makefile (from r359037, head/libexec/flua/Makefile) ============================================================================== --- head/libexec/flua/Makefile Tue Mar 17 15:57:25 2020 (r359037, copy source) +++ head/lib/liblua/Makefile Tue Mar 17 17:28:12 2020 (r359045) @@ -1,11 +1,10 @@ #! $FreeBSD$ -.include - LUASRC?= ${SRCTOP}/contrib/lua/src .PATH: ${LUASRC} -PROG= flua +LIB= lua +INTERNALLIB= WARNS?= 2 MAN= # No manpage; this is internal. @@ -14,9 +13,9 @@ CWARNFLAGS.gcc+= -Wno-format-nonliteral LIBADD= m # Core functions -SRCS= lapi.c lcode.c lctype.c ldebug.c ldo.c ldump.c lfunc.c lgc.c llex.c \ - lmem.c lobject.c lopcodes.c lparser.c lstate.c lstring.c ltable.c \ - ltm.c lundump.c lvm.c lzio.c +SRCS= lapi.c lcode.c lctype.c ldebug.c ldo.c ldump.c lfunc.c lgc.c linit.c \ + llex.c lmem.c lobject.c lopcodes.c lparser.c lstate.c lstring.c \ + ltable.c ltm.c lundump.c lvm.c lzio.c # Library functions; any change to these likely needs an accompanying change # in our custom linit_flua.c. We use our custom linit.c to make it easier to @@ -24,15 +23,7 @@ SRCS= lapi.c lcode.c lctype.c ldebug.c ldo.c ldump.c l SRCS+= lauxlib.c lbaselib.c lbitlib.c lcorolib.c ldblib.c liolib.c \ lmathlib.c loslib.c lstrlib.c ltablib.c lutf8lib.c loadlib.c -# Entry point -SRCS+= lua.c - -# FreeBSD Extensions -.PATH: ${.CURDIR}/modules -SRCS+= linit_flua.c -SRCS+= lfs.c lposix.c - CFLAGS+= -I${.CURDIR} -I${.CURDIR}/modules -I${LUASRC} CFLAGS+= -DLUA_PROGNAME="\"${PROG}\"" -.include +.include Copied: head/lib/liblua/luaconf.h (from r359044, head/libexec/flua/luaconf.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lib/liblua/luaconf.h Tue Mar 17 17:28:12 2020 (r359045, copy of r359044, head/libexec/flua/luaconf.h) @@ -0,0 +1,795 @@ +/* $FreeBSD$ */ +/* +** $Id: luaconf.h,v 1.259.1.1 2017/04/19 17:29:57 roberto Exp $ +** Configuration file for Lua +** See Copyright Notice in lua.h +*/ + + +#ifndef luaconf_h +#define luaconf_h + +#include +#include + + +/* +** =================================================================== +** Search for "@@" to find all configurable definitions. +** =================================================================== +*/ + + +/* +** {==================================================================== +** System Configuration: macros to adapt (if needed) Lua to some +** particular platform, for instance compiling it with 32-bit numbers or +** restricting it to C89. +** ===================================================================== +*/ + +/* +@@ LUA_32BITS enables Lua with 32-bit integers and 32-bit floats. You +** can also define LUA_32BITS in the make file, but changing here you +** ensure that all software connected to Lua will be compiled with the +** same configuration. +*/ +/* #define LUA_32BITS */ + + +/* +@@ LUA_USE_C89 controls the use of non-ISO-C89 features. +** Define it if you want Lua to avoid the use of a few C99 features +** or Windows-specific features on Windows. +*/ +/* #define LUA_USE_C89 */ + + +/* +** By default, Lua on Windows use (some) specific Windows features +*/ +#if !defined(LUA_USE_C89) && defined(_WIN32) && !defined(_WIN32_WCE) +#define LUA_USE_WINDOWS /* enable goodies for regular Windows */ +#endif + + +#if defined(LUA_USE_WINDOWS) +#define LUA_DL_DLL /* enable support for DLL */ +#define LUA_USE_C89 /* broadly, Windows is C89 */ +#endif + + +#if defined(LUA_USE_LINUX) +#define LUA_USE_POSIX +#define LUA_USE_DLOPEN /* needs an extra library: -ldl */ +#define LUA_USE_READLINE /* needs some extra libraries */ +#endif + + +#if defined(LUA_USE_MACOSX) +#define LUA_USE_POSIX +#define LUA_USE_DLOPEN /* MacOS does not need -ldl */ +#define LUA_USE_READLINE /* needs an extra library: -lreadline */ +#endif + +/* Local modifications: need io.popen */ +#ifdef __FreeBSD__ +#define LUA_USE_POSIX +#endif + +/* +@@ LUA_C89_NUMBERS ensures that Lua uses the largest types available for +** C89 ('long' and 'double'); Windows always has '__int64', so it does +** not need to use this case. +*/ +#if defined(LUA_USE_C89) && !defined(LUA_USE_WINDOWS) +#define LUA_C89_NUMBERS +#endif + + + +/* +@@ LUAI_BITSINT defines the (minimum) number of bits in an 'int'. +*/ +/* avoid undefined shifts */ +#if ((INT_MAX >> 15) >> 15) >= 1 +#define LUAI_BITSINT 32 +#else +/* 'int' always must have at least 16 bits */ +#define LUAI_BITSINT 16 +#endif + + +/* +@@ LUA_INT_TYPE defines the type for Lua integers. +@@ LUA_FLOAT_TYPE defines the type for Lua floats. +** Lua should work fine with any mix of these options (if supported +** by your C compiler). The usual configurations are 64-bit integers +** and 'double' (the default), 32-bit integers and 'float' (for +** restricted platforms), and 'long'/'double' (for C compilers not +** compliant with C99, which may not have support for 'long long'). +*/ + +/* predefined options for LUA_INT_TYPE */ +#define LUA_INT_INT 1 +#define LUA_INT_LONG 2 +#define LUA_INT_LONGLONG 3 + +/* predefined options for LUA_FLOAT_TYPE */ +#define LUA_FLOAT_FLOAT 1 +#define LUA_FLOAT_DOUBLE 2 +#define LUA_FLOAT_LONGDOUBLE 3 + +#if defined(LUA_32BITS) /* { */ +/* +** 32-bit integers and 'float' +*/ +#if LUAI_BITSINT >= 32 /* use 'int' if big enough */ +#define LUA_INT_TYPE LUA_INT_INT +#else /* otherwise use 'long' */ +#define LUA_INT_TYPE LUA_INT_LONG +#endif +#define LUA_FLOAT_TYPE LUA_FLOAT_FLOAT + +#elif defined(LUA_C89_NUMBERS) /* }{ */ +/* +** largest types available for C89 ('long' and 'double') +*/ +#define LUA_INT_TYPE LUA_INT_LONG +#define LUA_FLOAT_TYPE LUA_FLOAT_DOUBLE + +#endif /* } */ + + +/* +** default configuration for 64-bit Lua ('long long' and 'double') +*/ +#if !defined(LUA_INT_TYPE) +#define LUA_INT_TYPE LUA_INT_LONGLONG +#endif + +#if !defined(LUA_FLOAT_TYPE) +#define LUA_FLOAT_TYPE LUA_FLOAT_DOUBLE +#endif + +/* }================================================================== */ + + + + +/* +** {================================================================== +** Configuration for Paths. +** =================================================================== +*/ + +/* +** LUA_PATH_SEP is the character that separates templates in a path. +** LUA_PATH_MARK is the string that marks the substitution points in a +** template. +** LUA_EXEC_DIR in a Windows path is replaced by the executable's +** directory. +*/ +#define LUA_PATH_SEP ";" +#define LUA_PATH_MARK "?" +#define LUA_EXEC_DIR "!" + + +/* +@@ LUA_PATH_DEFAULT is the default path that Lua uses to look for +** Lua libraries. +@@ LUA_CPATH_DEFAULT is the default path that Lua uses to look for +** C libraries. +** CHANGE them if your machine has a non-conventional directory +** hierarchy or if you want to install your libraries in +** non-conventional directories. +*/ +#define LUA_VDIR LUA_VERSION_MAJOR "." LUA_VERSION_MINOR +#if defined(_WIN32) /* { */ +/* +** In Windows, any exclamation mark ('!') in the path is replaced by the +** path of the directory of the executable file of the current process. +*/ +#define LUA_LDIR "!\\lua\\" +#define LUA_CDIR "!\\" +#define LUA_SHRDIR "!\\..\\share\\lua\\" LUA_VDIR "\\" +#define LUA_PATH_DEFAULT \ + LUA_LDIR"?.lua;" LUA_LDIR"?\\init.lua;" \ + LUA_CDIR"?.lua;" LUA_CDIR"?\\init.lua;" \ + LUA_SHRDIR"?.lua;" LUA_SHRDIR"?\\init.lua;" \ + ".\\?.lua;" ".\\?\\init.lua" +#define LUA_CPATH_DEFAULT \ + LUA_CDIR"?.dll;" \ + LUA_CDIR"..\\lib\\lua\\" LUA_VDIR "\\?.dll;" \ + LUA_CDIR"loadall.dll;" ".\\?.dll" + +#else /* }{ */ + +#define LUA_ROOT "/usr/local/" +#define LUA_LDIR LUA_ROOT "share/lua/" LUA_VDIR "/" +#define LUA_CDIR LUA_ROOT "lib/lua/" LUA_VDIR "/" +#define LUA_PATH_DEFAULT \ + LUA_LDIR"?.lua;" LUA_LDIR"?/init.lua;" \ + LUA_CDIR"?.lua;" LUA_CDIR"?/init.lua;" \ + "./?.lua;" "./?/init.lua" +#define LUA_CPATH_DEFAULT \ + LUA_CDIR"?.so;" LUA_CDIR"loadall.so;" "./?.so" +#endif /* } */ + + +/* +@@ LUA_DIRSEP is the directory separator (for submodules). +** CHANGE it if your machine does not use "/" as the directory separator +** and is not Windows. (On Windows Lua automatically uses "\".) +*/ +#if defined(_WIN32) +#define LUA_DIRSEP "\\" +#else +#define LUA_DIRSEP "/" +#endif + +/* }================================================================== */ + + +/* +** {================================================================== +** Marks for exported symbols in the C code +** =================================================================== +*/ + +/* +@@ LUA_API is a mark for all core API functions. +@@ LUALIB_API is a mark for all auxiliary library functions. +@@ LUAMOD_API is a mark for all standard library opening functions. +** CHANGE them if you need to define those functions in some special way. +** For instance, if you want to create one Windows DLL with the core and +** the libraries, you may want to use the following definition (define +** LUA_BUILD_AS_DLL to get it). +*/ +#if defined(LUA_BUILD_AS_DLL) /* { */ + +#if defined(LUA_CORE) || defined(LUA_LIB) /* { */ +#define LUA_API __declspec(dllexport) +#else /* }{ */ +#define LUA_API __declspec(dllimport) +#endif /* } */ + +#else /* }{ */ + +#define LUA_API extern + +#endif /* } */ + + +/* more often than not the libs go together with the core */ +#define LUALIB_API LUA_API +#define LUAMOD_API LUALIB_API + + +/* +@@ LUAI_FUNC is a mark for all extern functions that are not to be +** exported to outside modules. +@@ LUAI_DDEF and LUAI_DDEC are marks for all extern (const) variables +** that are not to be exported to outside modules (LUAI_DDEF for +** definitions and LUAI_DDEC for declarations). +** CHANGE them if you need to mark them in some special way. Elf/gcc +** (versions 3.2 and later) mark them as "hidden" to optimize access +** when Lua is compiled as a shared library. Not all elf targets support +** this attribute. Unfortunately, gcc does not offer a way to check +** whether the target offers that support, and those without support +** give a warning about it. To avoid these warnings, change to the +** default definition. +*/ +#if defined(__GNUC__) && ((__GNUC__*100 + __GNUC_MINOR__) >= 302) && \ + defined(__ELF__) /* { */ +#define LUAI_FUNC __attribute__((visibility("hidden"))) extern +#else /* }{ */ +#define LUAI_FUNC extern +#endif /* } */ + +#define LUAI_DDEC LUAI_FUNC +#define LUAI_DDEF /* empty */ + +/* }================================================================== */ + + +/* +** {================================================================== +** Compatibility with previous versions +** =================================================================== +*/ + +/* +@@ LUA_COMPAT_5_2 controls other macros for compatibility with Lua 5.2. +@@ LUA_COMPAT_5_1 controls other macros for compatibility with Lua 5.1. +** You can define it to get all options, or change specific options +** to fit your specific needs. +*/ +#if defined(LUA_COMPAT_5_2) /* { */ + +/* +@@ LUA_COMPAT_MATHLIB controls the presence of several deprecated +** functions in the mathematical library. +*/ +#define LUA_COMPAT_MATHLIB + +/* +@@ LUA_COMPAT_BITLIB controls the presence of library 'bit32'. +*/ +#define LUA_COMPAT_BITLIB + +/* +@@ LUA_COMPAT_IPAIRS controls the effectiveness of the __ipairs metamethod. +*/ +#define LUA_COMPAT_IPAIRS + +/* +@@ LUA_COMPAT_APIINTCASTS controls the presence of macros for +** manipulating other integer types (lua_pushunsigned, lua_tounsigned, +** luaL_checkint, luaL_checklong, etc.) +*/ +#define LUA_COMPAT_APIINTCASTS + +#endif /* } */ + + +#if defined(LUA_COMPAT_5_1) /* { */ + +/* Incompatibilities from 5.2 -> 5.3 */ +#define LUA_COMPAT_MATHLIB +#define LUA_COMPAT_APIINTCASTS + +/* +@@ LUA_COMPAT_UNPACK controls the presence of global 'unpack'. +** You can replace it with 'table.unpack'. +*/ +#define LUA_COMPAT_UNPACK + +/* +@@ LUA_COMPAT_LOADERS controls the presence of table 'package.loaders'. +** You can replace it with 'package.searchers'. +*/ +#define LUA_COMPAT_LOADERS + +/* +@@ macro 'lua_cpcall' emulates deprecated function lua_cpcall. +** You can call your C function directly (with light C functions). +*/ +#define lua_cpcall(L,f,u) \ + (lua_pushcfunction(L, (f)), \ + lua_pushlightuserdata(L,(u)), \ + lua_pcall(L,1,0,0)) + + +/* +@@ LUA_COMPAT_LOG10 defines the function 'log10' in the math library. +** You can rewrite 'log10(x)' as 'log(x, 10)'. +*/ +#define LUA_COMPAT_LOG10 + +/* +@@ LUA_COMPAT_LOADSTRING defines the function 'loadstring' in the base +** library. You can rewrite 'loadstring(s)' as 'load(s)'. +*/ +#define LUA_COMPAT_LOADSTRING + +/* +@@ LUA_COMPAT_MAXN defines the function 'maxn' in the table library. +*/ +#define LUA_COMPAT_MAXN + +/* +@@ The following macros supply trivial compatibility for some +** changes in the API. The macros themselves document how to +** change your code to avoid using them. +*/ +#define lua_strlen(L,i) lua_rawlen(L, (i)) + +#define lua_objlen(L,i) lua_rawlen(L, (i)) + +#define lua_equal(L,idx1,idx2) lua_compare(L,(idx1),(idx2),LUA_OPEQ) +#define lua_lessthan(L,idx1,idx2) lua_compare(L,(idx1),(idx2),LUA_OPLT) + +/* +@@ LUA_COMPAT_MODULE controls compatibility with previous +** module functions 'module' (Lua) and 'luaL_register' (C). +*/ +#define LUA_COMPAT_MODULE + +#endif /* } */ + + +/* +@@ LUA_COMPAT_FLOATSTRING makes Lua format integral floats without a +@@ a float mark ('.0'). +** This macro is not on by default even in compatibility mode, +** because this is not really an incompatibility. +*/ +/* #define LUA_COMPAT_FLOATSTRING */ + +/* }================================================================== */ + + + +/* +** {================================================================== +** Configuration for Numbers. +** Change these definitions if no predefined LUA_FLOAT_* / LUA_INT_* +** satisfy your needs. +** =================================================================== +*/ + +/* +@@ LUA_NUMBER is the floating-point type used by Lua. +@@ LUAI_UACNUMBER is the result of a 'default argument promotion' +@@ over a floating number. +@@ l_mathlim(x) corrects limit name 'x' to the proper float type +** by prefixing it with one of FLT/DBL/LDBL. +@@ LUA_NUMBER_FRMLEN is the length modifier for writing floats. +@@ LUA_NUMBER_FMT is the format for writing floats. +@@ lua_number2str converts a float to a string. +@@ l_mathop allows the addition of an 'l' or 'f' to all math operations. +@@ l_floor takes the floor of a float. +@@ lua_str2number converts a decimal numeric string to a number. +*/ + + +/* The following definitions are good for most cases here */ + +#define l_floor(x) (l_mathop(floor)(x)) + +#define lua_number2str(s,sz,n) \ + l_sprintf((s), sz, LUA_NUMBER_FMT, (LUAI_UACNUMBER)(n)) + +/* +@@ lua_numbertointeger converts a float number to an integer, or +** returns 0 if float is not within the range of a lua_Integer. +** (The range comparisons are tricky because of rounding. The tests +** here assume a two-complement representation, where MININTEGER always +** has an exact representation as a float; MAXINTEGER may not have one, +** and therefore its conversion to float may have an ill-defined value.) +*/ +#define lua_numbertointeger(n,p) \ + ((n) >= (LUA_NUMBER)(LUA_MININTEGER) && \ + (n) < -(LUA_NUMBER)(LUA_MININTEGER) && \ + (*(p) = (LUA_INTEGER)(n), 1)) + + +/* now the variable definitions */ + +#if LUA_FLOAT_TYPE == LUA_FLOAT_FLOAT /* { single float */ + +#define LUA_NUMBER float + +#define l_mathlim(n) (FLT_##n) + +#define LUAI_UACNUMBER double + +#define LUA_NUMBER_FRMLEN "" +#define LUA_NUMBER_FMT "%.7g" + +#define l_mathop(op) op##f + +#define lua_str2number(s,p) strtof((s), (p)) + + +#elif LUA_FLOAT_TYPE == LUA_FLOAT_LONGDOUBLE /* }{ long double */ + +#define LUA_NUMBER long double + +#define l_mathlim(n) (LDBL_##n) + +#define LUAI_UACNUMBER long double + +#define LUA_NUMBER_FRMLEN "L" +#define LUA_NUMBER_FMT "%.19Lg" + +#define l_mathop(op) op##l + +#define lua_str2number(s,p) strtold((s), (p)) + +#elif LUA_FLOAT_TYPE == LUA_FLOAT_DOUBLE /* }{ double */ + +#define LUA_NUMBER double + +#define l_mathlim(n) (DBL_##n) + +#define LUAI_UACNUMBER double + +#define LUA_NUMBER_FRMLEN "" +#define LUA_NUMBER_FMT "%.14g" + +#define l_mathop(op) op + +#define lua_str2number(s,p) strtod((s), (p)) + +#else /* }{ */ + +#error "numeric float type not defined" + +#endif /* } */ + + + +/* +@@ LUA_INTEGER is the integer type used by Lua. +** +@@ LUA_UNSIGNED is the unsigned version of LUA_INTEGER. +** +@@ LUAI_UACINT is the result of a 'default argument promotion' +@@ over a lUA_INTEGER. +@@ LUA_INTEGER_FRMLEN is the length modifier for reading/writing integers. +@@ LUA_INTEGER_FMT is the format for writing integers. +@@ LUA_MAXINTEGER is the maximum value for a LUA_INTEGER. +@@ LUA_MININTEGER is the minimum value for a LUA_INTEGER. +@@ lua_integer2str converts an integer to a string. +*/ + + +/* The following definitions are good for most cases here */ + +#define LUA_INTEGER_FMT "%" LUA_INTEGER_FRMLEN "d" + +#define LUAI_UACINT LUA_INTEGER + +#define lua_integer2str(s,sz,n) \ + l_sprintf((s), sz, LUA_INTEGER_FMT, (LUAI_UACINT)(n)) + +/* +** use LUAI_UACINT here to avoid problems with promotions (which +** can turn a comparison between unsigneds into a signed comparison) +*/ +#define LUA_UNSIGNED unsigned LUAI_UACINT + + +/* now the variable definitions */ + +#if LUA_INT_TYPE == LUA_INT_INT /* { int */ + +#define LUA_INTEGER int +#define LUA_INTEGER_FRMLEN "" + +#define LUA_MAXINTEGER INT_MAX +#define LUA_MININTEGER INT_MIN + +#elif LUA_INT_TYPE == LUA_INT_LONG /* }{ long */ + +#define LUA_INTEGER long +#define LUA_INTEGER_FRMLEN "l" + +#define LUA_MAXINTEGER LONG_MAX +#define LUA_MININTEGER LONG_MIN + +#elif LUA_INT_TYPE == LUA_INT_LONGLONG /* }{ long long */ + +/* use presence of macro LLONG_MAX as proxy for C99 compliance */ +#if defined(LLONG_MAX) /* { */ +/* use ISO C99 stuff */ + +#define LUA_INTEGER long long +#define LUA_INTEGER_FRMLEN "ll" + +#define LUA_MAXINTEGER LLONG_MAX +#define LUA_MININTEGER LLONG_MIN + +#elif defined(LUA_USE_WINDOWS) /* }{ */ +/* in Windows, can use specific Windows types */ + +#define LUA_INTEGER __int64 +#define LUA_INTEGER_FRMLEN "I64" + +#define LUA_MAXINTEGER _I64_MAX +#define LUA_MININTEGER _I64_MIN + +#else /* }{ */ + +#error "Compiler does not support 'long long'. Use option '-DLUA_32BITS' \ + or '-DLUA_C89_NUMBERS' (see file 'luaconf.h' for details)" + +#endif /* } */ + +#else /* }{ */ + +#error "numeric integer type not defined" + +#endif /* } */ + +/* }================================================================== */ + + +/* +** {================================================================== +** Dependencies with C99 and other C details +** =================================================================== +*/ + +/* +@@ l_sprintf is equivalent to 'snprintf' or 'sprintf' in C89. +** (All uses in Lua have only one format item.) +*/ +#if !defined(LUA_USE_C89) +#define l_sprintf(s,sz,f,i) snprintf(s,sz,f,i) +#else +#define l_sprintf(s,sz,f,i) ((void)(sz), sprintf(s,f,i)) +#endif + + +/* +@@ lua_strx2number converts an hexadecimal numeric string to a number. +** In C99, 'strtod' does that conversion. Otherwise, you can +** leave 'lua_strx2number' undefined and Lua will provide its own +** implementation. +*/ +#if !defined(LUA_USE_C89) +#define lua_strx2number(s,p) lua_str2number(s,p) +#endif + + +/* +@@ lua_pointer2str converts a pointer to a readable string in a +** non-specified way. +*/ +#define lua_pointer2str(buff,sz,p) l_sprintf(buff,sz,"%p",p) + + +/* +@@ lua_number2strx converts a float to an hexadecimal numeric string. +** In C99, 'sprintf' (with format specifiers '%a'/'%A') does that. +** Otherwise, you can leave 'lua_number2strx' undefined and Lua will +** provide its own implementation. +*/ +#if !defined(LUA_USE_C89) +#define lua_number2strx(L,b,sz,f,n) \ + ((void)L, l_sprintf(b,sz,f,(LUAI_UACNUMBER)(n))) +#endif + + +/* +** 'strtof' and 'opf' variants for math functions are not valid in +** C89. Otherwise, the macro 'HUGE_VALF' is a good proxy for testing the +** availability of these variants. ('math.h' is already included in +** all files that use these macros.) +*/ +#if defined(LUA_USE_C89) || (defined(HUGE_VAL) && !defined(HUGE_VALF)) +#undef l_mathop /* variants not available */ +#undef lua_str2number +#define l_mathop(op) (lua_Number)op /* no variant */ +#define lua_str2number(s,p) ((lua_Number)strtod((s), (p))) +#endif + + +/* +@@ LUA_KCONTEXT is the type of the context ('ctx') for continuation +** functions. It must be a numerical type; Lua will use 'intptr_t' if +** available, otherwise it will use 'ptrdiff_t' (the nearest thing to +** 'intptr_t' in C89) +*/ +#define LUA_KCONTEXT ptrdiff_t + +#if !defined(LUA_USE_C89) && defined(__STDC_VERSION__) && \ + __STDC_VERSION__ >= 199901L +#include +#if defined(INTPTR_MAX) /* even in C99 this type is optional */ +#undef LUA_KCONTEXT +#define LUA_KCONTEXT intptr_t +#endif +#endif + + +/* +@@ lua_getlocaledecpoint gets the locale "radix character" (decimal point). +** Change that if you do not want to use C locales. (Code using this +** macro must include header 'locale.h'.) +*/ +#if !defined(lua_getlocaledecpoint) +#define lua_getlocaledecpoint() (localeconv()->decimal_point[0]) +#endif + +/* }================================================================== */ + + +/* +** {================================================================== +** Language Variations +** ===================================================================== +*/ + +/* +@@ LUA_NOCVTN2S/LUA_NOCVTS2N control how Lua performs some +** coercions. Define LUA_NOCVTN2S to turn off automatic coercion from +** numbers to strings. Define LUA_NOCVTS2N to turn off automatic +** coercion from strings to numbers. +*/ +/* #define LUA_NOCVTN2S */ +/* #define LUA_NOCVTS2N */ + + +/* +@@ LUA_USE_APICHECK turns on several consistency checks on the C API. +** Define it as a help when debugging C code. +*/ +#if defined(LUA_USE_APICHECK) +#include +#define luai_apicheck(l,e) assert(e) +#endif + +/* }================================================================== */ + + +/* +** {================================================================== +** Macros that affect the API and must be stable (that is, must be the +** same when you compile Lua and when you compile code that links to +** Lua). You probably do not want/need to change them. +** ===================================================================== +*/ + +/* +@@ LUAI_MAXSTACK limits the size of the Lua stack. +** CHANGE it if you need a different limit. This limit is arbitrary; +** its only purpose is to stop Lua from consuming unlimited stack +** space (and to reserve some numbers for pseudo-indices). +*/ +#if LUAI_BITSINT >= 32 +#define LUAI_MAXSTACK 1000000 +#else +#define LUAI_MAXSTACK 15000 +#endif + + +/* +@@ LUA_EXTRASPACE defines the size of a raw memory area associated with +** a Lua state with very fast access. +** CHANGE it if you need a different size. +*/ +#define LUA_EXTRASPACE (sizeof(void *)) + + +/* +@@ LUA_IDSIZE gives the maximum size for the description of the source +@@ of a function in debug information. +** CHANGE it if you want a different size. +*/ +#define LUA_IDSIZE 60 + + +/* +@@ LUAL_BUFFERSIZE is the buffer size used by the lauxlib buffer system. +** CHANGE it if it uses too much C-stack space. (For long double, +** 'string.format("%.99f", -1e4932)' needs 5034 bytes, so a +** smaller buffer would force a memory allocation for each call to +** 'string.format'.) +*/ +#if LUA_FLOAT_TYPE == LUA_FLOAT_LONGDOUBLE +#define LUAL_BUFFERSIZE 8192 +#else +#define LUAL_BUFFERSIZE ((int)(0x80 * sizeof(void*) * sizeof(lua_Integer))) +#endif + +/* }================================================================== */ + + +/* +@@ LUA_QL describes how error messages quote program elements. +** Lua does not use these macros anymore; they are here for +** compatibility only. +*/ +#define LUA_QL(x) "'" x "'" +#define LUA_QS LUA_QL("%s") + + + + +/* =================================================================== */ + +/* +** Local configuration. You can use this space to add your redefinitions +** without modifying the main part of the file. +*/ + + + + + +#endif + Modified: head/libexec/flua/Makefile ============================================================================== --- head/libexec/flua/Makefile Tue Mar 17 17:03:24 2020 (r359044) +++ head/libexec/flua/Makefile Tue Mar 17 17:28:12 2020 (r359045) @@ -11,19 +11,8 @@ MAN= # No manpage; this is internal. CWARNFLAGS.gcc+= -Wno-format-nonliteral -LIBADD= m +LIBADD= lua -# Core functions -SRCS= lapi.c lcode.c lctype.c ldebug.c ldo.c ldump.c lfunc.c lgc.c llex.c \ - lmem.c lobject.c lopcodes.c lparser.c lstate.c lstring.c ltable.c \ - ltm.c lundump.c lvm.c lzio.c - -# Library functions; any change to these likely needs an accompanying change -# in our custom linit_flua.c. We use our custom linit.c to make it easier to -# support bootstrap flua that may not have supporting local libraries. -SRCS+= lauxlib.c lbaselib.c lbitlib.c lcorolib.c ldblib.c liolib.c \ - lmathlib.c loslib.c lstrlib.c ltablib.c lutf8lib.c loadlib.c - # Entry point SRCS+= lua.c @@ -32,7 +21,7 @@ SRCS+= lua.c SRCS+= linit_flua.c SRCS+= lfs.c lposix.c -CFLAGS+= -I${.CURDIR} -I${.CURDIR}/modules -I${LUASRC} +CFLAGS+= -I${SRCTOP}/lib/liblua -I${.CURDIR}/modules -I${LUASRC} CFLAGS+= -DLUA_PROGNAME="\"${PROG}\"" .include Modified: head/share/mk/src.libnames.mk ============================================================================== --- head/share/mk/src.libnames.mk Tue Mar 17 17:03:24 2020 (r359044) +++ head/share/mk/src.libnames.mk Tue Mar 17 17:28:12 2020 (r359045) @@ -41,6 +41,7 @@ _INTERNALLIBS= \ ifconfig \ ipf \ lpr \ + lua \ netbsd \ ntp \ ntpevent \ @@ -293,6 +294,7 @@ _DP_memstat= kvm _DP_magic= z _DP_mt= sbuf bsdxml _DP_ldns= ssl crypto +_DP_lua= m .if ${MK_OPENSSL} != "no" _DP_fetch= ssl crypto .else @@ -467,6 +469,9 @@ _LIB_OBJTOP?= ${OBJTOP} # INTERNALLIB definitions. LIBELFTCDIR= ${_LIB_OBJTOP}/lib/libelftc LIBELFTC?= ${LIBELFTCDIR}/libelftc${PIE_SUFFIX}.a + +LIBLUADIR= ${_LIB_OBJTOP}/lib/liblua +LIBLUA?= ${LIBLUADIR}/liblua${PIE_SUFFIX}.a LIBPEDIR= ${_LIB_OBJTOP}/lib/libpe LIBPE?= ${LIBPEDIR}/libpe${PIE_SUFFIX}.a From owner-svn-src-head@freebsd.org Tue Mar 17 18:17:34 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 01A3126DCFE; Tue, 17 Mar 2020 18:17:34 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hhGj29FJz3H56; Tue, 17 Mar 2020 18:17:33 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 18CD1D53A; Tue, 17 Mar 2020 18:17:33 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02HIHW1M035424; Tue, 17 Mar 2020 18:17:32 GMT (envelope-from brooks@FreeBSD.org) Received: (from brooks@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02HIHWdY035423; Tue, 17 Mar 2020 18:17:32 GMT (envelope-from brooks@FreeBSD.org) Message-Id: <202003171817.02HIHWdY035423@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: brooks set sender to brooks@FreeBSD.org using -f From: Brooks Davis Date: Tue, 17 Mar 2020 18:17:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359046 - head/share/mk X-SVN-Group: head X-SVN-Commit-Author: brooks X-SVN-Commit-Paths: head/share/mk X-SVN-Commit-Revision: 359046 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 18:17:34 -0000 Author: brooks Date: Tue Mar 17 18:17:32 2020 New Revision: 359046 URL: https://svnweb.freebsd.org/changeset/base/359046 Log: Support SUBDIR.${MK_FOO}.${MK_BAR} expresssions. This allows simplification of Makefiles where some SUBDIR entries depend on two things (e.g. something that depends on C++ and some other knob). Discussed with: imp, jhb Obtained from: CheriBSD MFC after: 3 days Sponsored by: DARPA Modified: head/share/mk/bsd.subdir.mk Modified: head/share/mk/bsd.subdir.mk ============================================================================== --- head/share/mk/bsd.subdir.mk Tue Mar 17 17:28:12 2020 (r359045) +++ head/share/mk/bsd.subdir.mk Tue Mar 17 18:17:32 2020 (r359046) @@ -16,8 +16,8 @@ # # SUBDIR A list of subdirectories that should be built as well. # Each of the targets will execute the same target in the -# subdirectories. SUBDIR.yes is automatically appended -# to this list. +# subdirectories. SUBDIR.yes and SUBDIR.yes.yes are +# automatically appended to this list. # # +++ targets +++ # @@ -122,8 +122,8 @@ install: beforeinstall realinstall afterinstall # SUBDIR recursing may be disabled for MK_DIRDEPS_BUILD .if !target(_SUBDIR) -.if defined(SUBDIR) || defined(SUBDIR.yes) -SUBDIR:=${SUBDIR} ${SUBDIR.yes} +.if defined(SUBDIR) || defined(SUBDIR.yes) || defined(SUBDIR.yes.yes) +SUBDIR:=${SUBDIR} ${SUBDIR.yes} ${SUBDIR.yes.yes} SUBDIR:=${SUBDIR:u} .endif From owner-svn-src-head@freebsd.org Tue Mar 17 18:44:05 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 82B2F26ECB3; Tue, 17 Mar 2020 18:44:05 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hhsK0l88z3LqX; Tue, 17 Mar 2020 18:44:05 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 7C158DAF7; Tue, 17 Mar 2020 18:44:04 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02HIi4Cn053170; Tue, 17 Mar 2020 18:44:04 GMT (envelope-from jhb@FreeBSD.org) Received: (from jhb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02HIi3rl053168; Tue, 17 Mar 2020 18:44:03 GMT (envelope-from jhb@FreeBSD.org) Message-Id: <202003171844.02HIi3rl053168@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org using -f From: John Baldwin Date: Tue, 17 Mar 2020 18:44:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359047 - in head: lib/libsysdecode sys/fs/procfs sys/sys X-SVN-Group: head X-SVN-Commit-Author: jhb X-SVN-Commit-Paths: in head: lib/libsysdecode sys/fs/procfs sys/sys X-SVN-Commit-Revision: 359047 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 18:44:05 -0000 Author: jhb Date: Tue Mar 17 18:44:03 2020 New Revision: 359047 URL: https://svnweb.freebsd.org/changeset/base/359047 Log: Mark procfs-based process debugging as deprecated for FreeBSD 13. Attempting to use ioctls on /proc//mem to control a process will trigger warnings on the console. The include file will also now emit a compile-time warning when used from userland. Reviewed by: emaste MFC after: 1 week Relnotes: yes Differential Revision: https://reviews.freebsd.org/D23822 Modified: head/lib/libsysdecode/Makefile head/sys/fs/procfs/procfs_ioctl.c head/sys/sys/pioctl.h Modified: head/lib/libsysdecode/Makefile ============================================================================== --- head/lib/libsysdecode/Makefile Tue Mar 17 18:17:32 2020 (r359046) +++ head/lib/libsysdecode/Makefile Tue Mar 17 18:44:03 2020 (r359047) @@ -121,6 +121,9 @@ CFLAGS.gcc.ioctl.c+= -Wno-redundant-decls CFLAGS.gcc+= ${CFLAGS.gcc.${.IMPSRC}} +# Ignore deprecation warning in +CFLAGS.ioctl.c+= -Wno-\#warnings + DEPENDOBJS+= tables.h tables.h: mktables sh ${.CURDIR}/mktables ${SYSROOT:U${DESTDIR}}${INCLUDEDIR} ${.TARGET} Modified: head/sys/fs/procfs/procfs_ioctl.c ============================================================================== --- head/sys/fs/procfs/procfs_ioctl.c Tue Mar 17 18:17:32 2020 (r359046) +++ head/sys/fs/procfs/procfs_ioctl.c Tue Mar 17 18:44:03 2020 (r359047) @@ -69,10 +69,53 @@ procfs_ioctl(PFS_IOCTL_ARGS) #ifdef COMPAT_FREEBSD6 int ival; #endif + static struct timeval lasttime; + static struct timeval interval = { .tv_sec = 1, .tv_usec = 0 }; KASSERT(p != NULL, ("%s() called without a process", __func__)); PROC_LOCK_ASSERT(p, MA_OWNED); + + switch (cmd) { +#if defined(COMPAT_FREEBSD5) || defined(COMPAT_FREEBSD4) || defined(COMPAT_43) + case _IOC(IOC_IN, 'p', 1, 0): +#endif +#ifdef COMPAT_FREEBSD6 + case _IO('p', 1): +#endif + case PIOCBIS: +#if defined(COMPAT_FREEBSD5) || defined(COMPAT_FREEBSD4) || defined(COMPAT_43) + case _IOC(IOC_IN, 'p', 2, 0): +#endif +#ifdef COMPAT_FREEBSD6 + case _IO('p', 2): +#endif + case PIOCBIC: +#if defined(COMPAT_FREEBSD5) || defined(COMPAT_FREEBSD4) || defined(COMPAT_43) + case _IOC(IOC_IN, 'p', 3, 0): +#endif +#ifdef COMPAT_FREEBSD6 + case _IO('p', 3): +#endif + case PIOCSFL: + case PIOCGFL: + case PIOCWAIT: + case PIOCSTATUS: +#ifdef COMPAT_FREEBSD32 + case PIOCWAIT32: + case PIOCSTATUS32: +#endif +#if defined(COMPAT_FREEBSD5) || defined(COMPAT_FREEBSD4) || defined(COMPAT_43) + case _IOC(IOC_IN, 'p', 5, 0): +#endif +#ifdef COMPAT_FREEBSD6 + case _IO('p', 5): +#endif + case PIOCCONT: + if (ratecheck(&lasttime, &interval) != 0) + gone_in(13, "procfs-based process debugging"); + break; + } error = 0; switch (cmd) { Modified: head/sys/sys/pioctl.h ============================================================================== --- head/sys/sys/pioctl.h Tue Mar 17 18:17:32 2020 (r359046) +++ head/sys/sys/pioctl.h Tue Mar 17 18:44:03 2020 (r359047) @@ -41,6 +41,10 @@ #ifndef _SYS_PIOCTL_H # define _SYS_PIOCTL_H +#ifndef _KERNEL +#warning " is deprecated, ptrace() should be used instead" +#endif + # include struct procfs_status { From owner-svn-src-head@freebsd.org Tue Mar 17 19:06:02 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 1971F26FFD5; Tue, 17 Mar 2020 19:06:02 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hjLd6zrRz4Y0K; Tue, 17 Mar 2020 19:06:01 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-8.local (unknown [IPv6:2601:648:8881:1e90:b814:3297:d0a:b7c3]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id 92A5E300A; Tue, 17 Mar 2020 19:06:01 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Subject: Re: svn commit: r359047 - in head: lib/libsysdecode sys/fs/procfs sys/sys From: John Baldwin To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <202003171844.02HIi3rl053168@repo.freebsd.org> Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: Date: Tue, 17 Mar 2020 12:06:00 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <202003171844.02HIi3rl053168@repo.freebsd.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 19:06:02 -0000 On 3/17/20 11:44 AM, John Baldwin wrote: > Author: jhb > Date: Tue Mar 17 18:44:03 2020 > New Revision: 359047 > URL: https://svnweb.freebsd.org/changeset/base/359047 > > Log: > Mark procfs-based process debugging as deprecated for FreeBSD 13. > > Attempting to use ioctls on /proc//mem to control a process will > trigger warnings on the console. The include file will > also now emit a compile-time warning when used from userland. > > Reviewed by: emaste > MFC after: 1 week > Relnotes: yes > Differential Revision: https://reviews.freebsd.org/D23822 Missed: PR: 244383 (exp-run) I also didn't quite say why. My original reason for why is that I have some debugging changes in flight to try to fix spurious EINTR's that break the GDB test suite (and we also have an open bug about spurious errors for gcore and truss). mjg@ wants to do this to remove overhead from the syscall path. Both of these reasons stem from the fact that procfs debugging is not just a layer on top of ptrace but sits beside it requiring duplicate checks in code, etc. They reuse some, but not all, of the same infrastructure. At this point, ptrace() now provides a superset of functionality relative to procfs, and that is only going to continue going forward as only ptrace() based debugging has seen active work in the past several years. -- John Baldwin From owner-svn-src-head@freebsd.org Tue Mar 17 19:20:13 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 9BDB9270509; Tue, 17 Mar 2020 19:20:13 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hjg12GwCz49P2; Tue, 17 Mar 2020 19:20:13 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id ECFA6E0A0; Tue, 17 Mar 2020 19:20:12 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02HJKCrG072366; Tue, 17 Mar 2020 19:20:12 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02HJKCK2072365; Tue, 17 Mar 2020 19:20:12 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <202003171920.02HJKCK2072365@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Tue, 17 Mar 2020 19:20:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359048 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 359048 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 19:20:13 -0000 Author: tuexen Date: Tue Mar 17 19:20:12 2020 New Revision: 359048 URL: https://svnweb.freebsd.org/changeset/base/359048 Log: Handle the timers in a consistent sequence according to the definition of the timer type. Just a cleanup, no functional change intended. MFC after: 1 week Modified: head/sys/netinet/sctputil.c Modified: head/sys/netinet/sctputil.c ============================================================================== --- head/sys/netinet/sctputil.c Tue Mar 17 18:44:03 2020 (r359047) +++ head/sys/netinet/sctputil.c Tue Mar 17 19:20:12 2020 (r359048) @@ -1738,9 +1738,6 @@ sctp_timeout_handler(void *t) /* call the handler for the appropriate timer type */ switch (type) { - case SCTP_TIMER_TYPE_ADDR_WQ: - sctp_handle_addr_wq(); - break; case SCTP_TIMER_TYPE_SEND: if ((stcb == NULL) || (inp == NULL)) { break; @@ -1905,27 +1902,6 @@ sctp_timeout_handler(void *t) #endif sctp_chunk_output(inp, stcb, SCTP_OUTPUT_FROM_SHUT_ACK_TMR, SCTP_SO_NOT_LOCKED); break; - case SCTP_TIMER_TYPE_SHUTDOWNGUARD: - if ((stcb == NULL) || (inp == NULL)) { - break; - } - SCTP_STAT_INCR(sctps_timoshutdownguard); - op_err = sctp_generate_cause(SCTP_BASE_SYSCTL(sctp_diag_info_code), - "Shutdown guard timer expired"); - sctp_abort_an_association(inp, stcb, op_err, SCTP_SO_NOT_LOCKED); - /* no need to unlock on tcb its gone */ - goto out_decr; - case SCTP_TIMER_TYPE_STRRESET: - if ((stcb == NULL) || (inp == NULL)) { - break; - } - if (sctp_strreset_timer(inp, stcb, net)) { - /* no need to unlock on tcb its gone */ - goto out_decr; - } - SCTP_STAT_INCR(sctps_timostrmrst); - sctp_chunk_output(inp, stcb, SCTP_OUTPUT_FROM_STRRST_TMR, SCTP_SO_NOT_LOCKED); - break; case SCTP_TIMER_TYPE_ASCONF: if ((stcb == NULL) || (inp == NULL)) { break; @@ -1940,13 +1916,16 @@ sctp_timeout_handler(void *t) #endif sctp_chunk_output(inp, stcb, SCTP_OUTPUT_FROM_ASCONF_TMR, SCTP_SO_NOT_LOCKED); break; - case SCTP_TIMER_TYPE_PRIM_DELETED: + case SCTP_TIMER_TYPE_SHUTDOWNGUARD: if ((stcb == NULL) || (inp == NULL)) { break; } - sctp_delete_prim_timer(inp, stcb, net); - SCTP_STAT_INCR(sctps_timodelprim); - break; + SCTP_STAT_INCR(sctps_timoshutdownguard); + op_err = sctp_generate_cause(SCTP_BASE_SYSCTL(sctp_diag_info_code), + "Shutdown guard timer expired"); + sctp_abort_an_association(inp, stcb, op_err, SCTP_SO_NOT_LOCKED); + /* no need to unlock on tcb its gone */ + goto out_decr; case SCTP_TIMER_TYPE_AUTOCLOSE: if ((stcb == NULL) || (inp == NULL)) { break; @@ -1956,6 +1935,33 @@ sctp_timeout_handler(void *t) sctp_chunk_output(inp, stcb, SCTP_OUTPUT_FROM_AUTOCLOSE_TMR, SCTP_SO_NOT_LOCKED); did_output = 0; break; + case SCTP_TIMER_TYPE_STRRESET: + if ((stcb == NULL) || (inp == NULL)) { + break; + } + if (sctp_strreset_timer(inp, stcb, net)) { + /* no need to unlock on tcb its gone */ + goto out_decr; + } + SCTP_STAT_INCR(sctps_timostrmrst); + sctp_chunk_output(inp, stcb, SCTP_OUTPUT_FROM_STRRST_TMR, SCTP_SO_NOT_LOCKED); + break; + case SCTP_TIMER_TYPE_INPKILL: + SCTP_STAT_INCR(sctps_timoinpkill); + if (inp == NULL) { + break; + } + /* + * special case, take away our increment since WE are the + * killer + */ + SCTP_INP_DECR_REF(inp); + sctp_timer_stop(SCTP_TIMER_TYPE_INPKILL, inp, NULL, NULL, + SCTP_FROM_SCTPUTIL + SCTP_LOC_3); + sctp_inpcb_free(inp, SCTP_FREE_SHOULD_USE_ABORT, + SCTP_CALLED_FROM_INPKILL_TIMER); + inp = NULL; + goto out_no_decr; case SCTP_TIMER_TYPE_ASOCKILL: if ((stcb == NULL) || (inp == NULL)) { break; @@ -1984,22 +1990,16 @@ sctp_timeout_handler(void *t) */ stcb = NULL; goto out_no_decr; - case SCTP_TIMER_TYPE_INPKILL: - SCTP_STAT_INCR(sctps_timoinpkill); - if (inp == NULL) { + case SCTP_TIMER_TYPE_ADDR_WQ: + sctp_handle_addr_wq(); + break; + case SCTP_TIMER_TYPE_PRIM_DELETED: + if ((stcb == NULL) || (inp == NULL)) { break; } - /* - * special case, take away our increment since WE are the - * killer - */ - SCTP_INP_DECR_REF(inp); - sctp_timer_stop(SCTP_TIMER_TYPE_INPKILL, inp, NULL, NULL, - SCTP_FROM_SCTPUTIL + SCTP_LOC_3); - sctp_inpcb_free(inp, SCTP_FREE_SHOULD_USE_ABORT, - SCTP_CALLED_FROM_INPKILL_TIMER); - inp = NULL; - goto out_no_decr; + sctp_delete_prim_timer(inp, stcb, net); + SCTP_STAT_INCR(sctps_timodelprim); + break; default: SCTPDBG(SCTP_DEBUG_TIMER1, "sctp_timeout_handler:unknown timer %d\n", type); @@ -2059,11 +2059,6 @@ sctp_timer_start(int t_type, struct sctp_inpcb *inp, s return; } switch (t_type) { - case SCTP_TIMER_TYPE_ADDR_WQ: - /* Only 1 tick away :-) */ - tmr = &SCTP_BASE_INFO(addr_wq_timer); - to_ticks = SCTP_ADDRESS_TICK_DELAY; - break; case SCTP_TIMER_TYPE_SEND: /* Here we use the RTO timer */ { @@ -2183,22 +2178,6 @@ sctp_timer_start(int t_type, struct sctp_inpcb *inp, s tmr = &inp->sctp_ep.signature_change; to_ticks = inp->sctp_ep.sctp_timeoutticks[SCTP_TIMER_SIGNATURE]; break; - case SCTP_TIMER_TYPE_ASOCKILL: - if (stcb == NULL) { - return; - } - tmr = &stcb->asoc.strreset_timer; - to_ticks = MSEC_TO_TICKS(SCTP_ASOC_KILL_TIMEOUT); - break; - case SCTP_TIMER_TYPE_INPKILL: - /* - * The inp is setup to die. We re-use the signature_chage - * timer since that has stopped and we are in the GONE - * state. - */ - tmr = &inp->sctp_ep.signature_change; - to_ticks = MSEC_TO_TICKS(SCTP_INP_KILL_TIMEOUT); - break; case SCTP_TIMER_TYPE_PATHMTURAISE: /* * Here we use the value found in the EP for PMTU ususually @@ -2225,6 +2204,21 @@ sctp_timer_start(int t_type, struct sctp_inpcb *inp, s } tmr = &net->rxt_timer; break; + case SCTP_TIMER_TYPE_ASCONF: + /* + * Here the timer comes from the stcb but its value is from + * the net's RTO. + */ + if ((stcb == NULL) || (net == NULL)) { + return; + } + if (net->RTO == 0) { + to_ticks = MSEC_TO_TICKS(stcb->asoc.initial_rto); + } else { + to_ticks = MSEC_TO_TICKS(net->RTO); + } + tmr = &stcb->asoc.asconf_timer; + break; case SCTP_TIMER_TYPE_SHUTDOWNGUARD: /* * Here we use the endpoints shutdown guard timer usually @@ -2240,6 +2234,20 @@ sctp_timer_start(int t_type, struct sctp_inpcb *inp, s } tmr = &stcb->asoc.shut_guard_timer; break; + case SCTP_TIMER_TYPE_AUTOCLOSE: + if (stcb == NULL) { + return; + } + if (stcb->asoc.sctp_autoclose_ticks == 0) { + /* + * Really an error since stcb is NOT set to + * autoclose + */ + return; + } + to_ticks = stcb->asoc.sctp_autoclose_ticks; + tmr = &stcb->asoc.autoclose_timer; + break; case SCTP_TIMER_TYPE_STRRESET: /* * Here the timer comes from the stcb but its value is from @@ -2255,21 +2263,27 @@ sctp_timer_start(int t_type, struct sctp_inpcb *inp, s } tmr = &stcb->asoc.strreset_timer; break; - case SCTP_TIMER_TYPE_ASCONF: + case SCTP_TIMER_TYPE_INPKILL: /* - * Here the timer comes from the stcb but its value is from - * the net's RTO. + * The inp is setup to die. We re-use the signature_chage + * timer since that has stopped and we are in the GONE + * state. */ - if ((stcb == NULL) || (net == NULL)) { + tmr = &inp->sctp_ep.signature_change; + to_ticks = MSEC_TO_TICKS(SCTP_INP_KILL_TIMEOUT); + break; + case SCTP_TIMER_TYPE_ASOCKILL: + if (stcb == NULL) { return; } - if (net->RTO == 0) { - to_ticks = MSEC_TO_TICKS(stcb->asoc.initial_rto); - } else { - to_ticks = MSEC_TO_TICKS(net->RTO); - } - tmr = &stcb->asoc.asconf_timer; + tmr = &stcb->asoc.strreset_timer; + to_ticks = MSEC_TO_TICKS(SCTP_ASOC_KILL_TIMEOUT); break; + case SCTP_TIMER_TYPE_ADDR_WQ: + /* Only 1 tick away :-) */ + tmr = &SCTP_BASE_INFO(addr_wq_timer); + to_ticks = SCTP_ADDRESS_TICK_DELAY; + break; case SCTP_TIMER_TYPE_PRIM_DELETED: if ((stcb == NULL) || (net != NULL)) { return; @@ -2277,20 +2291,6 @@ sctp_timer_start(int t_type, struct sctp_inpcb *inp, s to_ticks = MSEC_TO_TICKS(stcb->asoc.initial_rto); tmr = &stcb->asoc.delete_prim_timer; break; - case SCTP_TIMER_TYPE_AUTOCLOSE: - if (stcb == NULL) { - return; - } - if (stcb->asoc.sctp_autoclose_ticks == 0) { - /* - * Really an error since stcb is NOT set to - * autoclose - */ - return; - } - to_ticks = stcb->asoc.sctp_autoclose_ticks; - tmr = &stcb->asoc.autoclose_timer; - break; default: SCTPDBG(SCTP_DEBUG_TIMER1, "%s: Unknown timer type %d\n", __func__, t_type); @@ -2340,9 +2340,6 @@ sctp_timer_stop(int t_type, struct sctp_inpcb *inp, st SCTP_TCB_LOCK_ASSERT(stcb); } switch (t_type) { - case SCTP_TIMER_TYPE_ADDR_WQ: - tmr = &SCTP_BASE_INFO(addr_wq_timer); - break; case SCTP_TIMER_TYPE_SEND: if ((stcb == NULL) || (net == NULL)) { return; @@ -2387,24 +2384,6 @@ sctp_timer_stop(int t_type, struct sctp_inpcb *inp, st * must assure that we do not kill it by accident. */ break; - case SCTP_TIMER_TYPE_ASOCKILL: - /* - * Stop the asoc kill timer. - */ - if (stcb == NULL) { - return; - } - tmr = &stcb->asoc.strreset_timer; - break; - - case SCTP_TIMER_TYPE_INPKILL: - /* - * The inp is setup to die. We re-use the signature_chage - * timer since that has stopped and we are in the GONE - * state. - */ - tmr = &inp->sctp_ep.signature_change; - break; case SCTP_TIMER_TYPE_PATHMTURAISE: if ((stcb == NULL) || (net == NULL)) { return; @@ -2417,35 +2396,55 @@ sctp_timer_stop(int t_type, struct sctp_inpcb *inp, st } tmr = &net->rxt_timer; break; + case SCTP_TIMER_TYPE_ASCONF: + if (stcb == NULL) { + return; + } + tmr = &stcb->asoc.asconf_timer; + break; case SCTP_TIMER_TYPE_SHUTDOWNGUARD: if (stcb == NULL) { return; } tmr = &stcb->asoc.shut_guard_timer; break; - case SCTP_TIMER_TYPE_STRRESET: + case SCTP_TIMER_TYPE_AUTOCLOSE: if (stcb == NULL) { return; } - tmr = &stcb->asoc.strreset_timer; + tmr = &stcb->asoc.autoclose_timer; break; - case SCTP_TIMER_TYPE_ASCONF: + case SCTP_TIMER_TYPE_STRRESET: if (stcb == NULL) { return; } - tmr = &stcb->asoc.asconf_timer; + tmr = &stcb->asoc.strreset_timer; break; - case SCTP_TIMER_TYPE_PRIM_DELETED: + case SCTP_TIMER_TYPE_INPKILL: + /* + * The inp is setup to die. We re-use the signature_chage + * timer since that has stopped and we are in the GONE + * state. + */ + tmr = &inp->sctp_ep.signature_change; + break; + case SCTP_TIMER_TYPE_ASOCKILL: + /* + * Stop the asoc kill timer. + */ if (stcb == NULL) { return; } - tmr = &stcb->asoc.delete_prim_timer; + tmr = &stcb->asoc.strreset_timer; break; - case SCTP_TIMER_TYPE_AUTOCLOSE: + case SCTP_TIMER_TYPE_ADDR_WQ: + tmr = &SCTP_BASE_INFO(addr_wq_timer); + break; + case SCTP_TIMER_TYPE_PRIM_DELETED: if (stcb == NULL) { return; } - tmr = &stcb->asoc.autoclose_timer; + tmr = &stcb->asoc.delete_prim_timer; break; default: SCTPDBG(SCTP_DEBUG_TIMER1, "%s: Unknown timer type %d\n", From owner-svn-src-head@freebsd.org Tue Mar 17 21:11:39 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id DEACD2728D2; Tue, 17 Mar 2020 21:11:39 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hm7Z5w4Sz4fHt; Tue, 17 Mar 2020 21:11:38 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 876DBF57B; Tue, 17 Mar 2020 21:11:38 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02HLBcCO041346; Tue, 17 Mar 2020 21:11:38 GMT (envelope-from jhb@FreeBSD.org) Received: (from jhb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02HLBcXA041345; Tue, 17 Mar 2020 21:11:38 GMT (envelope-from jhb@FreeBSD.org) Message-Id: <202003172111.02HLBcXA041345@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org using -f From: John Baldwin Date: Tue, 17 Mar 2020 21:11:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359050 - head/tools/build/mk X-SVN-Group: head X-SVN-Commit-Author: jhb X-SVN-Commit-Paths: head/tools/build/mk X-SVN-Commit-Revision: 359050 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 21:11:40 -0000 Author: jhb Date: Tue Mar 17 21:11:38 2020 New Revision: 359050 URL: https://svnweb.freebsd.org/changeset/base/359050 Log: Add missing DTrace files for WITHOUT_CDDL=yes. Reviewed by: dteske MFC after: 1 week Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D24037 Modified: head/tools/build/mk/OptionalObsoleteFiles.inc Modified: head/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- head/tools/build/mk/OptionalObsoleteFiles.inc Tue Mar 17 19:53:03 2020 (r359049) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Tue Mar 17 21:11:38 2020 (r359050) @@ -1151,13 +1151,18 @@ OLD_FILES+=usr/lib/dtrace/drti.o OLD_FILES+=usr/lib/dtrace/errno.d OLD_FILES+=usr/lib/dtrace/io.d OLD_FILES+=usr/lib/dtrace/ip.d +OLD_FILES+=usr/lib/dtrace/mbuf.d OLD_FILES+=usr/lib/dtrace/psinfo.d .if ${TARGET_ARCH} == "amd64" || ${TARGET_ARCH} == "i386" OLD_FILES+=usr/lib/dtrace/regs_x86.d .endif +OLD_FILES+=usr/lib/dtrace/sctp.d +OLD_FILES+=usr/lib/dtrace/siftr.d OLD_FILES+=usr/lib/dtrace/signal.d +OLD_FILES+=usr/lib/dtrace/socket.d OLD_FILES+=usr/lib/dtrace/tcp.d OLD_FILES+=usr/lib/dtrace/udp.d +OLD_FILES+=usr/lib/dtrace/udplite.d OLD_FILES+=usr/lib/dtrace/unistd.d OLD_FILES+=usr/lib/libavl.a OLD_FILES+=usr/lib/libavl.so @@ -1205,29 +1210,120 @@ OLD_LIBS+=usr/lib32/libuutil.so.2 OLD_FILES+=usr/lib32/libuutil_p.a .endif OLD_LIBS+=lib/libdtrace.so.2 +OLD_FILES+=usr/libexec/dwatch/chmod +OLD_FILES+=usr/libexec/dwatch/errno +OLD_FILES+=usr/libexec/dwatch/fchmodat +OLD_FILES+=usr/libexec/dwatch/io +OLD_FILES+=usr/libexec/dwatch/io-done +OLD_FILES+=usr/libexec/dwatch/io-start +OLD_FILES+=usr/libexec/dwatch/ip +OLD_FILES+=usr/libexec/dwatch/ip-receive +OLD_FILES+=usr/libexec/dwatch/ip-send +OLD_FILES+=usr/libexec/dwatch/kill +OLD_FILES+=usr/libexec/dwatch/lchmod +OLD_FILES+=usr/libexec/dwatch/nanosleep +OLD_FILES+=usr/libexec/dwatch/open +OLD_FILES+=usr/libexec/dwatch/openat +OLD_FILES+=usr/libexec/dwatch/proc +OLD_FILES+=usr/libexec/dwatch/proc-create +OLD_FILES+=usr/libexec/dwatch/proc-exec +OLD_FILES+=usr/libexec/dwatch/proc-exec-failure +OLD_FILES+=usr/libexec/dwatch/proc-exec-success +OLD_FILES+=usr/libexec/dwatch/proc-exit +OLD_FILES+=usr/libexec/dwatch/proc-signal +OLD_FILES+=usr/libexec/dwatch/proc-signal-clear +OLD_FILES+=usr/libexec/dwatch/proc-signal-discard +OLD_FILES+=usr/libexec/dwatch/proc-signal-send +OLD_FILES+=usr/libexec/dwatch/proc-status +OLD_FILES+=usr/libexec/dwatch/read +OLD_FILES+=usr/libexec/dwatch/recv +OLD_FILES+=usr/libexec/dwatch/recvfrom +OLD_FILES+=usr/libexec/dwatch/recvmsg +OLD_FILES+=usr/libexec/dwatch/rw +OLD_FILES+=usr/libexec/dwatch/sched +OLD_FILES+=usr/libexec/dwatch/sched-change-pri +OLD_FILES+=usr/libexec/dwatch/sched-cpu +OLD_FILES+=usr/libexec/dwatch/sched-dequeue +OLD_FILES+=usr/libexec/dwatch/sched-enqueue +OLD_FILES+=usr/libexec/dwatch/sched-exec +OLD_FILES+=usr/libexec/dwatch/sched-lend-pri +OLD_FILES+=usr/libexec/dwatch/sched-load-change +OLD_FILES+=usr/libexec/dwatch/sched-off-cpu +OLD_FILES+=usr/libexec/dwatch/sched-on-cpu +OLD_FILES+=usr/libexec/dwatch/sched-preempt +OLD_FILES+=usr/libexec/dwatch/sched-pri +OLD_FILES+=usr/libexec/dwatch/sched-queue +OLD_FILES+=usr/libexec/dwatch/sched-remain-cpu +OLD_FILES+=usr/libexec/dwatch/sched-sleep +OLD_FILES+=usr/libexec/dwatch/sched-surrender +OLD_FILES+=usr/libexec/dwatch/sched-tick +OLD_FILES+=usr/libexec/dwatch/sched-wakeup +OLD_FILES+=usr/libexec/dwatch/send +OLD_FILES+=usr/libexec/dwatch/sendmsg +OLD_FILES+=usr/libexec/dwatch/sendrecv +OLD_FILES+=usr/libexec/dwatch/sendto +OLD_FILES+=usr/libexec/dwatch/systop +OLD_FILES+=usr/libexec/dwatch/tcp +OLD_FILES+=usr/libexec/dwatch/tcp-accept +OLD_FILES+=usr/libexec/dwatch/tcp-accept-established +OLD_FILES+=usr/libexec/dwatch/tcp-accept-refused +OLD_FILES+=usr/libexec/dwatch/tcp-connect +OLD_FILES+=usr/libexec/dwatch/tcp-connect-established +OLD_FILES+=usr/libexec/dwatch/tcp-connect-refused +OLD_FILES+=usr/libexec/dwatch/tcp-connect-request +OLD_FILES+=usr/libexec/dwatch/tcp-established +OLD_FILES+=usr/libexec/dwatch/tcp-init +OLD_FILES+=usr/libexec/dwatch/tcp-io +OLD_FILES+=usr/libexec/dwatch/tcp-receive +OLD_FILES+=usr/libexec/dwatch/tcp-refused +OLD_FILES+=usr/libexec/dwatch/tcp-send +OLD_FILES+=usr/libexec/dwatch/tcp-state-change +OLD_FILES+=usr/libexec/dwatch/tcp-status +OLD_FILES+=usr/libexec/dwatch/udp +OLD_FILES+=usr/libexec/dwatch/udp-receive +OLD_FILES+=usr/libexec/dwatch/udp-send +OLD_FILES+=usr/libexec/dwatch/udplite +OLD_FILES+=usr/libexec/dwatch/udplite-receive +OLD_FILES+=usr/libexec/dwatch/udplite-send +OLD_FILES+=usr/libexec/dwatch/vop_create +OLD_FILES+=usr/libexec/dwatch/vop_lookup +OLD_FILES+=usr/libexec/dwatch/vop_mkdir +OLD_FILES+=usr/libexec/dwatch/vop_mknod +OLD_FILES+=usr/libexec/dwatch/vop_readdir +OLD_FILES+=usr/libexec/dwatch/vop_remove +OLD_FILES+=usr/libexec/dwatch/vop_rename +OLD_FILES+=usr/libexec/dwatch/vop_rmdir +OLD_FILES+=usr/libexec/dwatch/vop_symlink +OLD_FILES+=usr/libexec/dwatch/write OLD_FILES+=usr/sbin/dtrace +OLD_FILES+=usr/sbin/dwatch OLD_FILES+=usr/sbin/lockstat OLD_FILES+=usr/sbin/plockstat OLD_FILES+=usr/share/man/man1/dtrace.1.gz OLD_FILES+=usr/share/man/man1/dtruss.1.gz OLD_FILES+=usr/share/man/man1/lockstat.1.gz OLD_FILES+=usr/share/man/man1/plockstat.1.gz +OLD_FILES+=usr/share/dtrace/blocking OLD_FILES+=usr/share/dtrace/disklatency OLD_FILES+=usr/share/dtrace/disklatencycmd OLD_FILES+=usr/share/dtrace/hotopen +OLD_FILES+=usr/share/dtrace/nfsattrstats OLD_FILES+=usr/share/dtrace/nfsclienttime +OLD_FILES+=usr/share/dtrace/siftr OLD_FILES+=usr/share/dtrace/toolkit/execsnoop OLD_FILES+=usr/share/dtrace/toolkit/hotkernel OLD_FILES+=usr/share/dtrace/toolkit/hotuser OLD_FILES+=usr/share/dtrace/toolkit/opensnoop OLD_FILES+=usr/share/dtrace/toolkit/procsystime OLD_FILES+=usr/share/dtrace/tcpconn +OLD_FILES+=usr/share/dtrace/tcpdebug OLD_FILES+=usr/share/dtrace/tcpstate OLD_FILES+=usr/share/dtrace/tcptrack OLD_FILES+=usr/share/dtrace/udptrack OLD_FILES+=usr/share/man/man1/dtrace.1.gz OLD_DIRS+=usr/lib/dtrace OLD_DIRS+=usr/lib32/dtrace +OLD_DIRS+=usr/libexec/dwatch OLD_DIRS+=usr/share/dtrace/toolkit OLD_DIRS+=usr/share/dtrace .endif From owner-svn-src-head@freebsd.org Tue Mar 17 22:27:18 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id C2A6A274449; Tue, 17 Mar 2020 22:27:18 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hnpt1PYMz4fZ7; Tue, 17 Mar 2020 22:27:18 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5EAC7183B8; Tue, 17 Mar 2020 22:27:17 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02HMRHsn086024; Tue, 17 Mar 2020 22:27:17 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02HMRHLM086023; Tue, 17 Mar 2020 22:27:17 GMT (envelope-from cem@FreeBSD.org) Message-Id: <202003172227.02HMRHLM086023@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Tue, 17 Mar 2020 22:27:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359053 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 359053 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 22:27:18 -0000 Author: cem Date: Tue Mar 17 22:27:16 2020 New Revision: 359053 URL: https://svnweb.freebsd.org/changeset/base/359053 Log: Implement sysctl kern.boot_id Boot IDs are random, opaque 128-bit identifiers that distinguish distinct system boots. A new ID is generated each time the system boots. Unlike kern.boottime, the value is not modified by NTP adjustments. It remains fixed until the machine is restarted. PR: 244867 Reported by: Ricardo Fraile MFC after: I do not intend to, but feel free Modified: head/sys/kern/kern_mib.c Modified: head/sys/kern/kern_mib.c ============================================================================== --- head/sys/kern/kern_mib.c Tue Mar 17 21:29:03 2020 (r359052) +++ head/sys/kern/kern_mib.c Tue Mar 17 22:27:16 2020 (r359053) @@ -448,6 +448,32 @@ SYSCTL_PROC(_kern, KERN_HOSTID, hostid, CTLTYPE_ULONG | CTLFLAG_RW | CTLFLAG_PRISON | CTLFLAG_MPSAFE | CTLFLAG_CAPRD, NULL, 0, sysctl_hostid, "LU", "Host ID"); +static struct mtx bootid_lk; +MTX_SYSINIT(bootid_lock, &bootid_lk, "bootid generator lock", MTX_DEF); + +static int +sysctl_bootid(SYSCTL_HANDLER_ARGS) +{ + static uint8_t boot_id[16]; + static bool initialized = false; + + mtx_lock(&bootid_lk); + if (!initialized) { + if (!is_random_seeded()) { + mtx_unlock(&bootid_lk); + return (ENXIO); + } + arc4random_buf(boot_id, sizeof(boot_id)); + initialized = true; + } + mtx_unlock(&bootid_lk); + + return (SYSCTL_OUT(req, boot_id, sizeof(boot_id))); +} +SYSCTL_PROC(_kern, OID_AUTO, boot_id, + CTLTYPE_STRUCT | CTLFLAG_RD | CTLFLAG_MPSAFE | CTLFLAG_CAPRD, + NULL, 0, sysctl_bootid, "", "Random boot ID"); + /* * The osrelease string is copied from the global (osrelease in vers.c) into * prison0 by a sysinit and is inherited by child jails if not changed at jail From owner-svn-src-head@freebsd.org Tue Mar 17 22:36:30 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4CBB4274801 for ; Tue, 17 Mar 2020 22:36:30 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound2m.ore.mailhop.org (outbound2m.ore.mailhop.org [54.149.155.156]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48hp1T44PBz45V1 for ; Tue, 17 Mar 2020 22:36:29 +0000 (UTC) (envelope-from ian@freebsd.org) ARC-Seal: i=1; a=rsa-sha256; t=1584484587; cv=none; d=outbound.mailhop.org; s=arc-outbound20181012; b=UdBHHU4WP8HD3hyyHSj3YMA4iyAYNRTkziNoAnJAKu7BH+Qutmd1TtHLOtLGQyIWzNH+sgfjgwJ2i vwOrcXhw+wBky2yUjwjYsHfVM/0C4vYyMnCecKD1bZ8hFl+gzABLPRuBP9jsMvyVBLoFVWq9yVFnUQ HhNs6gCuVCufTgVxnEAisGIhPZAd2zfdZ1I4eLmwl4TVSWc67C/N16yWAntwlg1VSWYgDuwwopNwAF tgRCuUDOibUXHX1bDSuQRcmJspmvRLBX8DmZuymXJbPOBxMOPC6f05Il/1u5qhUv6/6sd4euRmfSFl 1w9I4aeAzbpFmQkZIFJu1kQ7A2bm77w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=arc-outbound20181012; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:to:from:subject:message-id:dkim-signature:from; bh=3wmFkSzN3hS2JMKH3LHoHWqqjDQprMeWDVErk+0miMY=; b=QhKWu+4vg1eVoa30XTmO+co2XFpT/cd/zUtZGNrrWok2MyMl5Hz+R2QmRMW3k0hMx/MaXpy3JXp6Y PRMvR6LkBoj822ZW8ZjDnbUBP2s26qQw+VX2roa6DvtBm2yTAaeonBhmcxOy5rW0xN6peMlTb1Um1U rtEH+sTgnC7k6a/VR0QvFEscrW4f+Y04js5vyzfBJDQqkPrKNh34RMBifPxX5hb/q9Lfoz8oyxUdvu hi4myCAOj6a1iUJVuBXuF+tXMhkhIy45Xk6tiFiK5uBYrvM0/Twe+bKiCGIjnVX5RTKMBJw5yE9V13 BgsojPD1UXGpu7eQhiHKN0Rt9HqCNcA== ARC-Authentication-Results: i=1; outbound4.ore.mailhop.org; spf=softfail smtp.mailfrom=freebsd.org smtp.remote-ip=67.177.211.60; dmarc=none header.from=freebsd.org; arc=none header.oldest-pass=0; DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=dkim-high; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:to:from:subject:message-id:from; bh=3wmFkSzN3hS2JMKH3LHoHWqqjDQprMeWDVErk+0miMY=; b=uvc8NzsNTCI7bpzaPz6mykx69kykUakuUEGU8DP0JuJkrnQGYDUKPs4hppBZdjxRWOFusju3V+1bk LKxtqwTW2YMeescEaJD96eKtB39J7CqJrE+kIt9+Bg7XyxV/FAkgqHCh6DsGQSkcp+Mvc7E9vlTA5u jWIEeRF4Aukt484fh3Q4uidqNGclND+f7IXlHfSjI8H/jvKK+YZLAtA+rNpCaHvfMZfUDQufdd+6vq 7TZfr507cLhHOjp4W98RhUQHjD5pokp0lV0oti6RLP0XcHS94tyh/eMyFoz66ILvYh/VV0Wstvc7Fs 7ICjP8tACrAWiQ0oMNLYXtC9utGUGPQ== X-MHO-RoutePath: aGlwcGll X-MHO-User: bc4dd746-689f-11ea-9eb3-25e2dfa9fa8d X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 67.177.211.60 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [67.177.211.60]) by outbound4.ore.mailhop.org (Halon) with ESMTPSA id bc4dd746-689f-11ea-9eb3-25e2dfa9fa8d; Tue, 17 Mar 2020 22:36:26 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id 02HMaPXT073578; Tue, 17 Mar 2020 16:36:25 -0600 (MDT) (envelope-from ian@freebsd.org) Message-ID: <047c4edb4ff9fa6c40be6492c2f082e374f7a941.camel@freebsd.org> Subject: Re: svn commit: r359053 - head/sys/kern From: Ian Lepore To: Conrad Meyer , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Date: Tue, 17 Mar 2020 16:36:25 -0600 In-Reply-To: <202003172227.02HMRHLM086023@repo.freebsd.org> References: <202003172227.02HMRHLM086023@repo.freebsd.org> Content-Type: text/plain; charset="ASCII" X-Mailer: Evolution 3.28.5 FreeBSD GNOME Team Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 48hp1T44PBz45V1 X-Spamd-Bar: + Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [1.97 / 15.00]; local_wl_from(0.00)[freebsd.org]; NEURAL_SPAM_LONG(1.00)[0.997,0]; NEURAL_SPAM_MEDIUM(0.98)[0.976,0]; ASN(0.00)[asn:16509, ipnet:54.148.0.0/15, country:US] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 22:36:30 -0000 On Tue, 2020-03-17 at 22:27 +0000, Conrad Meyer wrote: > Author: cem > Date: Tue Mar 17 22:27:16 2020 > New Revision: 359053 > URL: https://svnweb.freebsd.org/changeset/base/359053 > > Log: > Implement sysctl kern.boot_id > > Boot IDs are random, opaque 128-bit identifiers that distinguish distinct > system boots. A new ID is generated each time the system boots. Unlike > kern.boottime, the value is not modified by NTP adjustments. It remains fixed > until the machine is restarted. > > PR: 244867 > Reported by: Ricardo Fraile > MFC after: I do not intend to, but feel free > > Modified: > head/sys/kern/kern_mib.c > > Modified: head/sys/kern/kern_mib.c > ============================================================================== > --- head/sys/kern/kern_mib.c Tue Mar 17 21:29:03 2020 (r359052) > +++ head/sys/kern/kern_mib.c Tue Mar 17 22:27:16 2020 (r359053) > @@ -448,6 +448,32 @@ SYSCTL_PROC(_kern, KERN_HOSTID, hostid, > CTLTYPE_ULONG | CTLFLAG_RW | CTLFLAG_PRISON | CTLFLAG_MPSAFE | CTLFLAG_CAPRD, > NULL, 0, sysctl_hostid, "LU", "Host ID"); > > +static struct mtx bootid_lk; > +MTX_SYSINIT(bootid_lock, &bootid_lk, "bootid generator lock", MTX_DEF); > + > +static int > +sysctl_bootid(SYSCTL_HANDLER_ARGS) > +{ > + static uint8_t boot_id[16]; > + static bool initialized = false; > + > + mtx_lock(&bootid_lk); > + if (!initialized) { > + if (!is_random_seeded()) { > + mtx_unlock(&bootid_lk); > + return (ENXIO); > + } > + arc4random_buf(boot_id, sizeof(boot_id)); > + initialized = true; > + } > + mtx_unlock(&bootid_lk); > + > + return (SYSCTL_OUT(req, boot_id, sizeof(boot_id))); > +} > +SYSCTL_PROC(_kern, OID_AUTO, boot_id, > + CTLTYPE_STRUCT | CTLFLAG_RD | CTLFLAG_MPSAFE | CTLFLAG_CAPRD, > + NULL, 0, sysctl_bootid, "", "Random boot ID"); > + > /* > * The osrelease string is copied from the global (osrelease in vers.c) into > * prison0 by a sysinit and is inherited by child jails if not changed at jail This seems a bit complex. Why run a sysinit to init a mutex so that you can safely do a lazy init of boot_id? Seems like it would be much easier to just use a sysinit at SI_SUB_LAST to init boot_id before sysctl can reference it. -- Ian From owner-svn-src-head@freebsd.org Tue Mar 17 23:22:08 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4ED5827564D; Tue, 17 Mar 2020 23:22:08 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hq276v7Xz3QyM; Tue, 17 Mar 2020 23:22:07 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id BD17918D95; Tue, 17 Mar 2020 23:22:07 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02HNM7YX022217; Tue, 17 Mar 2020 23:22:07 GMT (envelope-from jhb@FreeBSD.org) Received: (from jhb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02HNM7MH022210; Tue, 17 Mar 2020 23:22:07 GMT (envelope-from jhb@FreeBSD.org) Message-Id: <202003172322.02HNM7MH022210@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org using -f From: John Baldwin Date: Tue, 17 Mar 2020 23:22:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359054 - head/lib/libsysdecode X-SVN-Group: head X-SVN-Commit-Author: jhb X-SVN-Commit-Paths: head/lib/libsysdecode X-SVN-Commit-Revision: 359054 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2020 23:22:08 -0000 Author: jhb Date: Tue Mar 17 23:22:07 2020 New Revision: 359054 URL: https://svnweb.freebsd.org/changeset/base/359054 Log: Fix the workaround to ignore the #warning for GCC. clang and gcc use different warning flags for #warning preprocessor directives. Reported by: Jenkins MFC after: 1 week Modified: head/lib/libsysdecode/Makefile Modified: head/lib/libsysdecode/Makefile ============================================================================== --- head/lib/libsysdecode/Makefile Tue Mar 17 22:27:16 2020 (r359053) +++ head/lib/libsysdecode/Makefile Tue Mar 17 23:22:07 2020 (r359054) @@ -119,10 +119,12 @@ CFLAGS+=-DPF # Workaround duplicate declarations in CFLAGS.gcc.ioctl.c+= -Wno-redundant-decls -CFLAGS.gcc+= ${CFLAGS.gcc.${.IMPSRC}} - # Ignore deprecation warning in -CFLAGS.ioctl.c+= -Wno-\#warnings +CFLAGS.clang.ioctl.c+= -Wno-\#warnings +CFLAGS.gcc.ioctl.c+= -Wno-cpp + +CFLAGS.clang+= ${CFLAGS.clang.${.IMPSRC}} +CFLAGS.gcc+= ${CFLAGS.gcc.${.IMPSRC}} DEPENDOBJS+= tables.h tables.h: mktables From owner-svn-src-head@freebsd.org Wed Mar 18 00:05:59 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 440A82766AF; Wed, 18 Mar 2020 00:05:59 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hr0k3R67z4bDC; Wed, 18 Mar 2020 00:05:58 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-8.local (unknown [IPv6:2601:648:8881:1e90:b814:3297:d0a:b7c3]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id 7E0C05593; Wed, 18 Mar 2020 00:05:57 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Subject: Re: svn commit: r359053 - head/sys/kern To: Ian Lepore , Conrad Meyer , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <202003172227.02HMRHLM086023@repo.freebsd.org> <047c4edb4ff9fa6c40be6492c2f082e374f7a941.camel@freebsd.org> From: John Baldwin Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: Date: Tue, 17 Mar 2020 17:05:55 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <047c4edb4ff9fa6c40be6492c2f082e374f7a941.camel@freebsd.org> Content-Type: text/plain; charset=windows-1252 Content-Language: en-US Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 00:05:59 -0000 On 3/17/20 3:36 PM, Ian Lepore wrote: > On Tue, 2020-03-17 at 22:27 +0000, Conrad Meyer wrote: >> Author: cem >> Date: Tue Mar 17 22:27:16 2020 >> New Revision: 359053 >> URL: https://svnweb.freebsd.org/changeset/base/359053 >> >> Log: >> Implement sysctl kern.boot_id >> >> Boot IDs are random, opaque 128-bit identifiers that distinguish distinct >> system boots. A new ID is generated each time the system boots. Unlike >> kern.boottime, the value is not modified by NTP adjustments. It remains fixed >> until the machine is restarted. >> >> PR: 244867 >> Reported by: Ricardo Fraile >> MFC after: I do not intend to, but feel free >> >> Modified: >> head/sys/kern/kern_mib.c >> >> Modified: head/sys/kern/kern_mib.c >> ============================================================================== >> --- head/sys/kern/kern_mib.c Tue Mar 17 21:29:03 2020 (r359052) >> +++ head/sys/kern/kern_mib.c Tue Mar 17 22:27:16 2020 (r359053) >> @@ -448,6 +448,32 @@ SYSCTL_PROC(_kern, KERN_HOSTID, hostid, >> CTLTYPE_ULONG | CTLFLAG_RW | CTLFLAG_PRISON | CTLFLAG_MPSAFE | CTLFLAG_CAPRD, >> NULL, 0, sysctl_hostid, "LU", "Host ID"); >> >> +static struct mtx bootid_lk; >> +MTX_SYSINIT(bootid_lock, &bootid_lk, "bootid generator lock", MTX_DEF); >> + >> +static int >> +sysctl_bootid(SYSCTL_HANDLER_ARGS) >> +{ >> + static uint8_t boot_id[16]; >> + static bool initialized = false; >> + >> + mtx_lock(&bootid_lk); >> + if (!initialized) { >> + if (!is_random_seeded()) { >> + mtx_unlock(&bootid_lk); >> + return (ENXIO); >> + } >> + arc4random_buf(boot_id, sizeof(boot_id)); >> + initialized = true; >> + } >> + mtx_unlock(&bootid_lk); >> + >> + return (SYSCTL_OUT(req, boot_id, sizeof(boot_id))); >> +} >> +SYSCTL_PROC(_kern, OID_AUTO, boot_id, >> + CTLTYPE_STRUCT | CTLFLAG_RD | CTLFLAG_MPSAFE | CTLFLAG_CAPRD, >> + NULL, 0, sysctl_bootid, "", "Random boot ID"); >> + >> /* >> * The osrelease string is copied from the global (osrelease in vers.c) into >> * prison0 by a sysinit and is inherited by child jails if not changed at jail > > This seems a bit complex. Why run a sysinit to init a mutex so that > you can safely do a lazy init of boot_id? Seems like it would be much > easier to just use a sysinit at SI_SUB_LAST to init boot_id before > sysctl can reference it. Presumably you may not have enough entropy by SI_SUB_LAST to generate it? -- John Baldwin From owner-svn-src-head@freebsd.org Wed Mar 18 01:09:42 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7FF6A277B8D; Wed, 18 Mar 2020 01:09:42 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hsQF2dlSz4SR6; Wed, 18 Mar 2020 01:09:41 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 36C131A123; Wed, 18 Mar 2020 01:09:41 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02I19eDR083451; Wed, 18 Mar 2020 01:09:40 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02I19ekx083450; Wed, 18 Mar 2020 01:09:40 GMT (envelope-from np@FreeBSD.org) Message-Id: <202003180109.02I19ekx083450@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Wed, 18 Mar 2020 01:09:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359057 - head/sys/dev/pci X-SVN-Group: head X-SVN-Commit-Author: np X-SVN-Commit-Paths: head/sys/dev/pci X-SVN-Commit-Revision: 359057 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 01:09:42 -0000 Author: np Date: Wed Mar 18 01:09:40 2020 New Revision: 359057 URL: https://svnweb.freebsd.org/changeset/base/359057 Log: Remove spurious warning about invalid VPD data. The warning used to be displayed for valid VPDs about 512B or above in size. Fix the size check and add a break while here so that the routine stops if if detects any problem. Tested with "pciconf -lV" Reviewed by: kib@, jhb@ MFC after: 1 week Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D23679 Modified: head/sys/dev/pci/pci.c Modified: head/sys/dev/pci/pci.c ============================================================================== --- head/sys/dev/pci/pci.c Tue Mar 17 23:58:58 2020 (r359056) +++ head/sys/dev/pci/pci.c Wed Mar 18 01:09:40 2020 (r359057) @@ -1102,16 +1102,16 @@ pci_read_vpd(device_t pcib, pcicfgregs *cfg) break; } remain |= byte2 << 8; - if (remain > (0x7f*4 - vrs.off)) { - state = -1; - pci_printf(cfg, - "invalid VPD data, remain %#x\n", - remain); - } name = byte & 0x7f; } else { remain = byte & 0x7; name = (byte >> 3) & 0xf; + } + if (vrs.off + remain - vrs.bytesinval > 0x8000) { + pci_printf(cfg, + "VPD data overflow, remain %#x\n", remain); + state = -1; + break; } switch (name) { case 0x2: /* String */ From owner-svn-src-head@freebsd.org Wed Mar 18 01:09:47 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 883FC277BB5; Wed, 18 Mar 2020 01:09:47 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hsQL3CsDz4Scq; Wed, 18 Mar 2020 01:09:46 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id F267B1A125; Wed, 18 Mar 2020 01:09:45 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02I19jRv083508; Wed, 18 Mar 2020 01:09:45 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02I19iKu083500; Wed, 18 Mar 2020 01:09:44 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <202003180109.02I19iKu083500@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Wed, 18 Mar 2020 01:09:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359058 - in head/sys: conf powerpc/booke powerpc/conf powerpc/include powerpc/powerpc X-SVN-Group: head X-SVN-Commit-Author: jhibbits X-SVN-Commit-Paths: in head/sys: conf powerpc/booke powerpc/conf powerpc/include powerpc/powerpc X-SVN-Commit-Revision: 359058 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 01:09:47 -0000 Author: jhibbits Date: Wed Mar 18 01:09:43 2020 New Revision: 359058 URL: https://svnweb.freebsd.org/changeset/base/359058 Log: powerpc: Axe PPC4xx support. Summary: The support was added almost a decade ago, and never completed. Just axe it. It was also inadvertently broken 5 years ago, and nobody noticed. Reviewed by: bdragon Differential Revision: https://reviews.freebsd.org/D23753 Deleted: head/sys/powerpc/booke/machdep_ppc4xx.c Modified: head/sys/conf/options.powerpc head/sys/powerpc/booke/machdep_e500.c head/sys/powerpc/conf/NOTES head/sys/powerpc/include/machdep.h head/sys/powerpc/include/profile.h head/sys/powerpc/include/pte.h head/sys/powerpc/include/spr.h head/sys/powerpc/include/tlb.h head/sys/powerpc/powerpc/db_disasm.c Modified: head/sys/conf/options.powerpc ============================================================================== --- head/sys/conf/options.powerpc Wed Mar 18 01:09:40 2020 (r359057) +++ head/sys/conf/options.powerpc Wed Mar 18 01:09:43 2020 (r359058) @@ -4,7 +4,6 @@ AIM opt_global.h BOOKE opt_global.h BOOKE_E500 opt_global.h -BOOKE_PPC4XX opt_global.h CELL POWERPC Modified: head/sys/powerpc/booke/machdep_e500.c ============================================================================== --- head/sys/powerpc/booke/machdep_e500.c Wed Mar 18 01:09:40 2020 (r359057) +++ head/sys/powerpc/booke/machdep_e500.c Wed Mar 18 01:09:43 2020 (r359058) @@ -53,12 +53,6 @@ extern void l2cache_inval(void); extern void bpred_enable(void); void -booke_init_tlb(vm_paddr_t fdt_immr_pa) -{ - -} - -void booke_enable_l1_cache(void) { uint32_t csr; Modified: head/sys/powerpc/conf/NOTES ============================================================================== --- head/sys/powerpc/conf/NOTES Wed Mar 18 01:09:40 2020 (r359057) +++ head/sys/powerpc/conf/NOTES Wed Mar 18 01:09:43 2020 (r359058) @@ -36,7 +36,6 @@ options KDTRACE_HOOKS # You must specify at least one CPU (the one you intend to run on). cpu AIM #cpu BOOKE_E500 -#cpu BOOKE_PPC440 options FPU_EMU Modified: head/sys/powerpc/include/machdep.h ============================================================================== --- head/sys/powerpc/include/machdep.h Wed Mar 18 01:09:40 2020 (r359057) +++ head/sys/powerpc/include/machdep.h Wed Mar 18 01:09:43 2020 (r359058) @@ -35,6 +35,5 @@ void booke_disable_l2_cache(void); void booke_enable_l1_cache(void); void booke_enable_l2_cache(void); void booke_enable_bpred(void); -void booke_init_tlb(vm_paddr_t); #endif /* _POWERPC_MACHDEP_H_ */ Modified: head/sys/powerpc/include/profile.h ============================================================================== --- head/sys/powerpc/include/profile.h Wed Mar 18 01:09:40 2020 (r359057) +++ head/sys/powerpc/include/profile.h Wed Mar 18 01:09:43 2020 (r359058) @@ -190,7 +190,7 @@ extern char interrupt_vector_base[]; extern char interrupt_vector_top[]; #define __PROFILE_VECTOR_BASE (uintfptr_t)interrupt_vector_base #define __PROFILE_VECTOR_TOP (uintfptr_t)interrupt_vector_top -#endif /* BOOKE_E500 || BOOKE_PPC4XX */ +#endif /* BOOKE_E500 */ #endif /* !COMPILING_LINT */ Modified: head/sys/powerpc/include/pte.h ============================================================================== --- head/sys/powerpc/include/pte.h Wed Mar 18 01:09:40 2020 (r359057) +++ head/sys/powerpc/include/pte.h Wed Mar 18 01:09:43 2020 (r359058) @@ -241,24 +241,6 @@ typedef uint64_t pte_t; #define PTE_PS_SHIFT 8 #define PTE_PS_4KB (2 << PTE_PS_SHIFT) -#elif defined(BOOKE_PPC4XX) - -#define PTE_WL1 TLB_WL1 -#define PTE_IL2I TLB_IL2I -#define PTE_IL2D TLB_IL2D - -#define PTE_W TLB_W -#define PTE_I TLB_I -#define PTE_M TLB_M -#define PTE_G TLB_G - -#define PTE_UX TLB_UX -#define PTE_SX TLB_SX -#define PTE_UW TLB_UW -#define PTE_SW TLB_SW -#define PTE_UR TLB_UR -#define PTE_SR TLB_SR - #endif /* Other PTE flags */ Modified: head/sys/powerpc/include/spr.h ============================================================================== --- head/sys/powerpc/include/spr.h Wed Mar 18 01:09:40 2020 (r359057) +++ head/sys/powerpc/include/spr.h Wed Mar 18 01:09:43 2020 (r359058) @@ -144,16 +144,16 @@ #define FSCR_EBB 0x0000000000000080 /* Event-based branch available */ #define FSCR_DSCR 0x0000000000000004 /* DSCR available in PR state */ #define SPR_DPDES 0x0b0 /* .6. Directed Privileged Doorbell Exception State Register */ -#define SPR_USPRG0 0x100 /* 4.. User SPR General 0 */ +#define SPR_USPRG0 0x100 /* 4.8 User SPR General 0 */ #define SPR_VRSAVE 0x100 /* .6. AltiVec VRSAVE */ #define SPR_SPRG0 0x110 /* 468 SPR General 0 */ #define SPR_SPRG1 0x111 /* 468 SPR General 1 */ #define SPR_SPRG2 0x112 /* 468 SPR General 2 */ #define SPR_SPRG3 0x113 /* 468 SPR General 3 */ -#define SPR_SPRG4 0x114 /* 4.. SPR General 4 */ -#define SPR_SPRG5 0x115 /* 4.. SPR General 5 */ -#define SPR_SPRG6 0x116 /* 4.. SPR General 6 */ -#define SPR_SPRG7 0x117 /* 4.. SPR General 7 */ +#define SPR_SPRG4 0x114 /* 4.8 SPR General 4 */ +#define SPR_SPRG5 0x115 /* 4.8 SPR General 5 */ +#define SPR_SPRG6 0x116 /* 4.8 SPR General 6 */ +#define SPR_SPRG7 0x117 /* 4.8 SPR General 7 */ #define SPR_SCOMC 0x114 /* ... SCOM Address Register (970) */ #define SPR_SCOMD 0x115 /* ... SCOM Data Register (970) */ #define SPR_ASR 0x118 /* ... Address Space Register (PPC64) */ @@ -227,6 +227,23 @@ #define LPCR_PECE_WAKESET (LPCR_PECE_EXT | LPCR_PECE_DECR | LPCR_PECE_ME) +#define SPR_DBSR 0x130 /* ..8 Debug Status Register */ +#define DBSR_IDE 0x80000000 /* Imprecise debug event. */ +#define DBSR_UDE 0x40000000 /* Unconditional debug event. */ +#define DBSR_MRR 0x30000000 /* Most recent Reset (mask). */ +#define DBSR_ICMP 0x08000000 /* Instr. complete debug event. */ +#define DBSR_BRT 0x04000000 /* Branch taken debug event. */ +#define DBSR_IRPT 0x02000000 /* Interrupt taken debug event. */ +#define DBSR_TRAP 0x01000000 /* Trap instr. debug event. */ +#define DBSR_IAC1 0x00800000 /* Instr. address compare #1. */ +#define DBSR_IAC2 0x00400000 /* Instr. address compare #2. */ +#define DBSR_IAC3 0x00200000 /* Instr. address compare #3. */ +#define DBSR_IAC4 0x00100000 /* Instr. address compare #4. */ +#define DBSR_DAC1R 0x00080000 /* Data addr. read compare #1. */ +#define DBSR_DAC1W 0x00040000 /* Data addr. write compare #1. */ +#define DBSR_DAC2R 0x00020000 /* Data addr. read compare #2. */ +#define DBSR_DAC2W 0x00010000 /* Data addr. write compare #2. */ +#define DBSR_RET 0x00008000 /* Return debug event. */ #define SPR_EPCR 0x133 #define EPCR_EXTGS 0x80000000 #define EPCR_DTLBGS 0x40000000 @@ -239,10 +256,21 @@ #define EPCR_DGTMI 0x00800000 #define EPCR_DMIUH 0x00400000 #define EPCR_PMGS 0x00200000 +#define SPR_DBCR0 0x134 /* ..8 Debug Control Register 0 */ +#define SPR_DBCR1 0x135 /* ..8 Debug Control Register 1 */ +#define SPR_IAC1 0x138 /* ..8 Instruction Address Compare 1 */ +#define SPR_IAC2 0x139 /* ..8 Instruction Address Compare 2 */ +#define SPR_IAC3 0x13a /* ..8 Instruction Address Compare 3 */ +#define SPR_IAC4 0x13b /* ..8 Instruction Address Compare 4 */ #define SPR_HSRR0 0x13a #define SPR_HSRR1 0x13b -#define SPR_LPCR 0x13e /* Logical Partitioning Control */ +#define SPR_DAC1 0x13c /* ..8 Data Address Compare 1 */ +#define SPR_DAC2 0x13d /* ..8 Data Address Compare 2 */ +#define SPR_DVC1 0x13e /* ..8 Data Value Compare 1 */ +#define SPR_DVC2 0x13f /* ..8 Data Value Compare 2 */ + +#define SPR_LPCR 0x13e /* .6. Logical Partitioning Control */ #define LPCR_LPES 0x008 /* Bit 60 */ #define LPCR_HVICE 0x002 /* Hypervisor Virtualization Interrupt (Arch 3.0) */ #define LPCR_PECE_DRBL (1ULL << 16) /* Directed Privileged Doorbell */ @@ -251,7 +279,7 @@ #define LPCR_PECE_DECR (1ULL << 13) /* Decrementer exceptions */ #define LPCR_PECE_ME (1ULL << 12) /* Machine Check and Hypervisor */ /* Maintenance exceptions */ -#define SPR_LPID 0x13f /* Logical Partitioning Control */ +#define SPR_LPID 0x13f /* .6. Logical Partitioning Control */ #define SPR_HMER 0x150 /* Hypervisor Maintenance Exception Register */ #define SPR_HMEER 0x151 /* Hypervisor Maintenance Exception Enable Register */ @@ -451,18 +479,11 @@ #define SPR_UMMCR0 0x3a8 /* .6. User Monitor Mode Control Register 0 */ #define SPR_USIA 0x3ab /* .6. User Sampled Instruction Address */ #define SPR_UMMCR1 0x3ac /* .6. User Monitor Mode Control Register 1 */ -#define SPR_ZPR 0x3b0 /* 4.. Zone Protection Register */ #define SPR_MMCR2 0x3b0 /* .6. Monitor Mode Control Register 2 */ #define SPR_MMCR2_THRESHMULT_32 0x80000000 /* Multiply MMCR0 threshold by 32 */ #define SPR_MMCR2_THRESHMULT_2 0x00000000 /* Multiply MMCR0 threshold by 2 */ -#define SPR_PID 0x3b1 /* 4.. Process ID */ #define SPR_PMC5 0x3b1 /* .6. Performance Counter Register 5 */ #define SPR_PMC6 0x3b2 /* .6. Performance Counter Register 6 */ -#define SPR_CCR0 0x3b3 /* 4.. Core Configuration Register 0 */ -#define SPR_IAC3 0x3b4 /* 4.. Instruction Address Compare 3 */ -#define SPR_IAC4 0x3b5 /* 4.. Instruction Address Compare 4 */ -#define SPR_DVC1 0x3b6 /* 4.. Data Value Compare 1 */ -#define SPR_DVC2 0x3b7 /* 4.. Data Value Compare 2 */ #define SPR_MMCR0 0x3b8 /* .6. Monitor Mode Control Register 0 */ #define SPR_MMCR0_FC 0x80000000 /* Freeze counters */ #define SPR_MMCR0_FCS 0x40000000 /* Freeze counters in supervisor mode */ @@ -482,11 +503,8 @@ #define SPR_MMCR0_TRIGGER 0x00002000 /* Trigger */ #define SPR_MMCR0_PMC1SEL(x) (((x) & 0x3f) << 6) /* PMC1 selector */ #define SPR_MMCR0_PMC2SEL(x) (((x) & 0x3f) << 0) /* PMC2 selector */ -#define SPR_SGR 0x3b9 /* 4.. Storage Guarded Register */ #define SPR_PMC1 0x3b9 /* .6. Performance Counter Register 1 */ -#define SPR_DCWR 0x3ba /* 4.. Data Cache Write-through Register */ #define SPR_PMC2 0x3ba /* .6. Performance Counter Register 2 */ -#define SPR_SLER 0x3bb /* 4.. Storage Little Endian Register */ #define SPR_SIA 0x3bb /* .6. Sampled Instruction Address */ #define SPR_MMCR1 0x3bc /* .6. Monitor Mode Control Register 2 */ #define SPR_MMCR1_PMC3SEL(x) (((x) & 0x1f) << 27) /* PMC 3 selector */ @@ -494,24 +512,17 @@ #define SPR_MMCR1_PMC5SEL(x) (((x) & 0x1f) << 17) /* PMC 5 selector */ #define SPR_MMCR1_PMC6SEL(x) (((x) & 0x3f) << 11) /* PMC 6 selector */ -#define SPR_SU0R 0x3bc /* 4.. Storage User-defined 0 Register */ #define SPR_PMC3 0x3bd /* .6. Performance Counter Register 3 */ #define SPR_PMC4 0x3be /* .6. Performance Counter Register 4 */ #define SPR_DMISS 0x3d0 /* .68 Data TLB Miss Address Register */ #define SPR_DCMP 0x3d1 /* .68 Data TLB Compare Register */ #define SPR_HASH1 0x3d2 /* .68 Primary Hash Address Register */ -#define SPR_ICDBDR 0x3d3 /* 4.. Instruction Cache Debug Data Register */ #define SPR_HASH2 0x3d3 /* .68 Secondary Hash Address Register */ #define SPR_IMISS 0x3d4 /* .68 Instruction TLB Miss Address Register */ #define SPR_TLBMISS 0x3d4 /* .6. TLB Miss Address Register */ -#if defined(BOOKE_PPC4XX) -#define SPR_DEAR 0x3d5 /* 4.. Data Error Address Register */ -#else #define SPR_DEAR 0x03d /* ..8 Data Exception Address Register */ -#endif #define SPR_ICMP 0x3d5 /* .68 Instruction TLB Compare Register */ #define SPR_PTEHI 0x3d5 /* .6. Instruction TLB Compare Register */ -#define SPR_EVPR 0x3d6 /* 4.. Exception Vector Prefix Register */ #define SPR_RPA 0x3d6 /* .68 Required Physical Address Register */ #define SPR_PTELO 0x3d6 /* .6. Required Physical Address Register */ @@ -550,9 +561,6 @@ #define TCR_FIE 0x00800000 /* FIT Interrupt Enable */ #define TCR_ARE 0x00400000 /* Auto Reload Enable */ -#define SPR_PIT 0x3db /* 4.. Programmable Interval Timer */ -#define SPR_SRR2 0x3de /* 4.. Save/Restore Register 2 */ -#define SPR_SRR3 0x3df /* 4.. Save/Restore Register 3 */ #define SPR_HID0 0x3f0 /* ..8 Hardware Implementation Register 0 */ #define SPR_HID1 0x3f1 /* ..8 Hardware Implementation Register 1 */ #define SPR_HID2 0x3f3 /* ..8 Hardware Implementation Register 2 */ @@ -564,54 +572,9 @@ #define SPR_CELL_TSCR 0x399 /* ... Cell BE Thread Switch Register */ #if defined(AIM) -#define SPR_DBSR 0x3f0 /* 4.. Debug Status Register */ -#define DBSR_IC 0x80000000 /* Instruction completion debug event */ -#define DBSR_BT 0x40000000 /* Branch Taken debug event */ -#define DBSR_EDE 0x20000000 /* Exception debug event */ -#define DBSR_TIE 0x10000000 /* Trap Instruction debug event */ -#define DBSR_UDE 0x08000000 /* Unconditional debug event */ -#define DBSR_IA1 0x04000000 /* IAC1 debug event */ -#define DBSR_IA2 0x02000000 /* IAC2 debug event */ -#define DBSR_DR1 0x01000000 /* DAC1 Read debug event */ -#define DBSR_DW1 0x00800000 /* DAC1 Write debug event */ -#define DBSR_DR2 0x00400000 /* DAC2 Read debug event */ -#define DBSR_DW2 0x00200000 /* DAC2 Write debug event */ -#define DBSR_IDE 0x00100000 /* Imprecise debug event */ -#define DBSR_IA3 0x00080000 /* IAC3 debug event */ -#define DBSR_IA4 0x00040000 /* IAC4 debug event */ -#define DBSR_MRR 0x00000300 /* Most recent reset */ -#define SPR_DBCR0 0x3f2 /* 4.. Debug Control Register 0 */ -#define SPR_DBCR1 0x3bd /* 4.. Debug Control Register 1 */ -#define SPR_IAC1 0x3f4 /* 4.. Instruction Address Compare 1 */ -#define SPR_IAC2 0x3f5 /* 4.. Instruction Address Compare 2 */ -#define SPR_DAC1 0x3f6 /* 4.. Data Address Compare 1 */ -#define SPR_DAC2 0x3f7 /* 4.. Data Address Compare 2 */ #define SPR_PIR 0x3ff /* .6. Processor Identification Register */ #elif defined(BOOKE) #define SPR_PIR 0x11e /* ..8 Processor Identification Register */ -#define SPR_DBSR 0x130 /* ..8 Debug Status Register */ -#define DBSR_IDE 0x80000000 /* Imprecise debug event. */ -#define DBSR_UDE 0x40000000 /* Unconditional debug event. */ -#define DBSR_MRR 0x30000000 /* Most recent Reset (mask). */ -#define DBSR_ICMP 0x08000000 /* Instr. complete debug event. */ -#define DBSR_BRT 0x04000000 /* Branch taken debug event. */ -#define DBSR_IRPT 0x02000000 /* Interrupt taken debug event. */ -#define DBSR_TRAP 0x01000000 /* Trap instr. debug event. */ -#define DBSR_IAC1 0x00800000 /* Instr. address compare #1. */ -#define DBSR_IAC2 0x00400000 /* Instr. address compare #2. */ -#define DBSR_IAC3 0x00200000 /* Instr. address compare #3. */ -#define DBSR_IAC4 0x00100000 /* Instr. address compare #4. */ -#define DBSR_DAC1R 0x00080000 /* Data addr. read compare #1. */ -#define DBSR_DAC1W 0x00040000 /* Data addr. write compare #1. */ -#define DBSR_DAC2R 0x00020000 /* Data addr. read compare #2. */ -#define DBSR_DAC2W 0x00010000 /* Data addr. write compare #2. */ -#define DBSR_RET 0x00008000 /* Return debug event. */ -#define SPR_DBCR0 0x134 /* ..8 Debug Control Register 0 */ -#define SPR_DBCR1 0x135 /* ..8 Debug Control Register 1 */ -#define SPR_IAC1 0x138 /* ..8 Instruction Address Compare 1 */ -#define SPR_IAC2 0x139 /* ..8 Instruction Address Compare 2 */ -#define SPR_DAC1 0x13c /* ..8 Data Address Compare 1 */ -#define SPR_DAC2 0x13d /* ..8 Data Address Compare 2 */ #endif #define DBCR0_EDM 0x80000000 /* External Debug Mode */ @@ -724,8 +687,6 @@ #define L3CR_PMEN 0x00000004 #define L3CR_PMSIZ 0x00000003 -#define SPR_DCCR 0x3fa /* 4.. Data Cache Cachability Register */ -#define SPR_ICCR 0x3fb /* 4.. Instruction Cache Cachability Register */ #define SPR_THRM1 0x3fc /* .6. Thermal Management Register */ #define SPR_THRM2 0x3fd /* .6. Thermal Management Register */ #define SPR_THRM_TIN 0x80000000 /* Thermal interrupt bit (RO) */ @@ -782,15 +743,6 @@ #define SPR_MCSRR1 0x23b /* ..8 571 Machine check SRR1 */ #define SPR_DSRR0 0x23e /* ..8 574 Debug SRR0 */ #define SPR_DSRR1 0x23f /* ..8 575 Debug SRR1 */ - -#define SPR_MMUCR 0x3b2 /* 4.. MMU Control Register */ -#define MMUCR_SWOA (0x80000000 >> 7) -#define MMUCR_U1TE (0x80000000 >> 9) -#define MMUCR_U2SWOAE (0x80000000 >> 10) -#define MMUCR_DULXE (0x80000000 >> 12) -#define MMUCR_IULXE (0x80000000 >> 13) -#define MMUCR_STS (0x80000000 >> 15) -#define MMUCR_STID_MASK (0xFF000000 >> 24) #define SPR_MMUCSR0 0x3f4 /* ..8 1012 MMU Control and Status Register 0 */ #define MMUCSR0_L2TLB0_FI 0x04 /* TLB0 flash invalidate */ Modified: head/sys/powerpc/include/tlb.h ============================================================================== --- head/sys/powerpc/include/tlb.h Wed Mar 18 01:09:40 2020 (r359057) +++ head/sys/powerpc/include/tlb.h Wed Mar 18 01:09:43 2020 (r359058) @@ -156,56 +156,6 @@ void tlb1_inval_entry(unsigned int); void tlb1_init(void); #endif /* !LOCORE */ -#elif defined(BOOKE_PPC4XX) - -/* TLB Words */ -#define TLB_PAGEID 0 -#define TLB_XLAT 1 -#define TLB_ATTRIB 2 - -/* Page identification fields */ -#define TLB_EPN_MASK (0xFFFFFC00 >> 0) -#define TLB_VALID (0x80000000 >> 22) -#define TLB_TS (0x80000000 >> 23) -#define TLB_SIZE_1K (0x00000000 >> 24) -#define TLB_SIZE_MASK (0xF0000000 >> 24) - -/* Translation fields */ -#define TLB_RPN_MASK (0xFFFFFC00 >> 0) -#define TLB_ERPN_MASK (0xF0000000 >> 28) - -/* Storage attribute and access control fields */ -#define TLB_WL1 (0x80000000 >> 11) -#define TLB_IL1I (0x80000000 >> 12) -#define TLB_IL1D (0x80000000 >> 13) -#define TLB_IL2I (0x80000000 >> 14) -#define TLB_IL2D (0x80000000 >> 15) -#define TLB_U0 (0x80000000 >> 16) -#define TLB_U1 (0x80000000 >> 17) -#define TLB_U2 (0x80000000 >> 18) -#define TLB_U3 (0x80000000 >> 19) -#define TLB_W (0x80000000 >> 20) -#define TLB_I (0x80000000 >> 21) -#define TLB_M (0x80000000 >> 22) -#define TLB_G (0x80000000 >> 23) -#define TLB_E (0x80000000 >> 24) -#define TLB_UX (0x80000000 >> 26) -#define TLB_UW (0x80000000 >> 27) -#define TLB_UR (0x80000000 >> 28) -#define TLB_SX (0x80000000 >> 29) -#define TLB_SW (0x80000000 >> 30) -#define TLB_SR (0x80000000 >> 31) -#define TLB_SIZE 64 - -#define TLB_SIZE_4K (0x10000000 >> 24) -#define TLB_SIZE_16K (0x20000000 >> 24) -#define TLB_SIZE_64K (0x30000000 >> 24) -#define TLB_SIZE_256K (0x40000000 >> 24) -#define TLB_SIZE_1M (0x50000000 >> 24) -#define TLB_SIZE_16M (0x70000000 >> 24) -#define TLB_SIZE_256M (0x90000000 >> 24) -#define TLB_SIZE_1G (0xA0000000 >> 24) - #endif /* BOOKE_E500 */ #define TID_KERNEL 0 /* TLB TID to use for kernel (shared) translations */ Modified: head/sys/powerpc/powerpc/db_disasm.c ============================================================================== --- head/sys/powerpc/powerpc/db_disasm.c Wed Mar 18 01:09:40 2020 (r359057) +++ head/sys/powerpc/powerpc/db_disasm.c Wed Mar 18 01:09:43 2020 (r359058) @@ -425,11 +425,7 @@ const struct specialreg sprregs[] = { { 0x019, "sdr1" }, { 0x01a, "srr0" }, { 0x01b, "srr1" }, -#ifdef BOOKE_PPC4XX - { 0x100, "usprg0" }, -#else { 0x100, "vrsave" }, -#endif { 0x110, "sprg0" }, { 0x111, "sprg1" }, { 0x112, "sprg2" }, @@ -496,14 +492,6 @@ const struct specialreg sprregs[] = { { 0x3db, "pit" }, { 0x3de, "srr2" }, { 0x3df, "srr3" }, -#ifdef BOOKE_PPC4XX - { 0x3f0, "dbsr" }, - { 0x3f2, "dbcr0" }, - { 0x3f4, "iac1" }, - { 0x3f5, "iac2" }, - { 0x3f6, "dac1" }, - { 0x3f7, "dac2" }, -#else { 0x3f0, "hid0" }, { 0x3f1, "hid1" }, { 0x3f2, "iabr" }, @@ -511,7 +499,6 @@ const struct specialreg sprregs[] = { { 0x3f5, "dabr" }, { 0x3f6, "msscr0" }, { 0x3f7, "msscr1" }, -#endif { 0x3f9, "l2cr" }, { 0x3fa, "dccr" }, { 0x3fb, "iccr" }, From owner-svn-src-head@freebsd.org Wed Mar 18 01:25:08 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4FE502781FE for ; Wed, 18 Mar 2020 01:25:08 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound3d.ore.mailhop.org (outbound3d.ore.mailhop.org [54.186.57.195]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48hsm249mGz3Jv0 for ; Wed, 18 Mar 2020 01:25:06 +0000 (UTC) (envelope-from ian@freebsd.org) ARC-Seal: i=1; a=rsa-sha256; t=1584494704; cv=none; d=outbound.mailhop.org; s=arc-outbound20181012; b=XVvpbVMobtBdHsIkd5jt7eDT87R5fjfTxLJr7YovzIqENxQOLRmCr3+mm+lJODbKwf3NsoMN3OCYi Z2L7DipHOU7FXJcH5GaxjIGZEhFPqi9/BDF7kKOBUbmWtQS+ni1CNwIqkC757KsdwaVSL19Mj/5Igp /oupa+RzXy4y+62Q2Rru1d8CZcMZpKpgZUKNqfakUdyUFKFr8bHtMiYqJvBkhturA21KoI13pdyQrU wS/lsb4GdMc7PZczDjxVQoMlzedWZhCgB1v8LaBxCI/DpUrB3MMjkwG1l8qCoL9JSoJmlXWtU34BFd T6d2cTWv1R4gGGmE8XeVYec7kHvPYAQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=arc-outbound20181012; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:to:from:subject:message-id:dkim-signature:from; bh=7PI7hl5cfNVe/SqIvpIVX3vcpQPBKk2kfGPgmS1A/kk=; b=nTqDNzJrU/Y2hhMMuIABpHu6ylgajHZH7DDjW5N/+MqKvdlOcRfyTBRrzQXIT1YyMzfPZ020/zYaw 5KbTkPQ2N59UeFap/BMe6ZCaxsNqhjWw8wrpj2gfGH8i/iEIT1H1WDox5EdEMPOSW+NY+Cu5DVtqw9 +/nj3Pju7KRRQ3zXhO4TLjjYomFEixyCfrKPL0QEhRG+kNWppLEOXOPoKxSxkHaCzJ7HhLcAFwVzJ9 XdTh+zJczSfKvVk+jtJY1QKIQiz9PPPl9mQyUnvgfr4YUIbEnQu6Gky5txCLNTADIyWRtrk2Jeaoj+ NWzVU/sRPGDboAW49gf+0cKY9dSJIqg== ARC-Authentication-Results: i=1; outbound3.ore.mailhop.org; spf=softfail smtp.mailfrom=freebsd.org smtp.remote-ip=67.177.211.60; dmarc=none header.from=freebsd.org; arc=none header.oldest-pass=0; DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=dkim-high; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:to:from:subject:message-id:from; bh=7PI7hl5cfNVe/SqIvpIVX3vcpQPBKk2kfGPgmS1A/kk=; b=ieMozSjGLDFJdVSquebtDd/Iw40DIS24TCYhUcJSSECT5j/XvZ29MYc3OYYQHyKrqn5FJ9dY5bqRo eVnQFsju3Htf9DbmLEAyHkB3YWUJLRPpBPltcziVrNA510o49MATVMxqudOIbgo3aUm72cH2bJKhNo +F3otuCirPh9Q0UBUhv/Q7MwsW3GWUFcXICzLp4wE+zZRtkqXRTeYtovq7E+czxz2v0VPxFh99kemw wOzdBPyl4z3RknHiuqjdKrcA6+uF+BGPdFxnNow5i/LNTxVaBkz9AWZfDBG4r4TvGYDbsRS+gng45E D+nRHHoN8aHVieaK7tGYnF6M0ff6wMw== X-MHO-RoutePath: aGlwcGll X-MHO-User: 4a5346cd-68b7-11ea-b80e-052b4a66b6b2 X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 67.177.211.60 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [67.177.211.60]) by outbound3.ore.mailhop.org (Halon) with ESMTPSA id 4a5346cd-68b7-11ea-b80e-052b4a66b6b2; Wed, 18 Mar 2020 01:25:03 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id 02I1P2OV074116; Tue, 17 Mar 2020 19:25:02 -0600 (MDT) (envelope-from ian@freebsd.org) Message-ID: <96b14f0cff17b3367e3428dbcdc1bf12d7ab7356.camel@freebsd.org> Subject: Re: svn commit: r359053 - head/sys/kern From: Ian Lepore To: John Baldwin , Conrad Meyer , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Date: Tue, 17 Mar 2020 19:25:01 -0600 In-Reply-To: References: <202003172227.02HMRHLM086023@repo.freebsd.org> <047c4edb4ff9fa6c40be6492c2f082e374f7a941.camel@freebsd.org> Content-Type: text/plain; charset="ASCII" X-Mailer: Evolution 3.28.5 FreeBSD GNOME Team Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 48hsm249mGz3Jv0 X-Spamd-Bar: + Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [1.97 / 15.00]; local_wl_from(0.00)[freebsd.org]; NEURAL_SPAM_LONG(1.00)[0.996,0]; NEURAL_SPAM_MEDIUM(0.98)[0.976,0]; ASN(0.00)[asn:16509, ipnet:54.186.0.0/15, country:US] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 01:25:08 -0000 On Tue, 2020-03-17 at 17:05 -0700, John Baldwin wrote: > On 3/17/20 3:36 PM, Ian Lepore wrote: > > On Tue, 2020-03-17 at 22:27 +0000, Conrad Meyer wrote: > > > Author: cem > > > Date: Tue Mar 17 22:27:16 2020 > > > New Revision: 359053 > > > URL: https://svnweb.freebsd.org/changeset/base/359053 > > > > > > Log: > > > Implement sysctl kern.boot_id > > > > > > Boot IDs are random, opaque 128-bit identifiers that > > > distinguish distinct > > > system boots. A new ID is generated each time the system > > > boots. Unlike > > > kern.boottime, the value is not modified by NTP > > > adjustments. It remains fixed > > > until the machine is restarted. > > > > > > PR: 244867 > > > Reported by: Ricardo Fraile > > > MFC after: I do not intend to, but feel free > > > > > > Modified: > > > head/sys/kern/kern_mib.c > > > > > > Modified: head/sys/kern/kern_mib.c > > > ================================================================= > > > ============= > > > --- head/sys/kern/kern_mib.c Tue Mar 17 21:29:03 2020 ( > > > r359052) > > > +++ head/sys/kern/kern_mib.c Tue Mar 17 22:27:16 2020 ( > > > r359053) > > > @@ -448,6 +448,32 @@ SYSCTL_PROC(_kern, KERN_HOSTID, hostid, > > > CTLTYPE_ULONG | CTLFLAG_RW | CTLFLAG_PRISON | CTLFLAG_MPSAFE > > > | CTLFLAG_CAPRD, > > > NULL, 0, sysctl_hostid, "LU", "Host ID"); > > > > > > +static struct mtx bootid_lk; > > > +MTX_SYSINIT(bootid_lock, &bootid_lk, "bootid generator lock", > > > MTX_DEF); > > > + > > > +static int > > > +sysctl_bootid(SYSCTL_HANDLER_ARGS) > > > +{ > > > + static uint8_t boot_id[16]; > > > + static bool initialized = false; > > > + > > > + mtx_lock(&bootid_lk); > > > + if (!initialized) { > > > + if (!is_random_seeded()) { > > > + mtx_unlock(&bootid_lk); > > > + return (ENXIO); > > > + } > > > + arc4random_buf(boot_id, sizeof(boot_id)); > > > + initialized = true; > > > + } > > > + mtx_unlock(&bootid_lk); > > > + > > > + return (SYSCTL_OUT(req, boot_id, sizeof(boot_id))); > > > +} > > > +SYSCTL_PROC(_kern, OID_AUTO, boot_id, > > > + CTLTYPE_STRUCT | CTLFLAG_RD | CTLFLAG_MPSAFE | > > > CTLFLAG_CAPRD, > > > + NULL, 0, sysctl_bootid, "", "Random boot ID"); > > > + > > > /* > > > * The osrelease string is copied from the global (osrelease in > > > vers.c) into > > > * prison0 by a sysinit and is inherited by child jails if not > > > changed at jail > > > > This seems a bit complex. Why run a sysinit to init a mutex so > > that > > you can safely do a lazy init of boot_id? Seems like it would be > > much > > easier to just use a sysinit at SI_SUB_LAST to init boot_id before > > sysctl can reference it. > > Presumably you may not have enough entropy by SI_SUB_LAST to generate > it? > I thought arc4random in the kernel could provide random numbers immediately (and definitely after jitter in device attachment times at the end of kernel init)? This doesn't seem like the kind of thing that needs crypto-strength randomness. -- Ian From owner-svn-src-head@freebsd.org Wed Mar 18 02:13:18 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id A608B27950A; Wed, 18 Mar 2020 02:13:18 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48htqf2QT8z4GLn; Wed, 18 Mar 2020 02:13:18 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D2FC61ADFE; Wed, 18 Mar 2020 02:13:17 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02I2DHMG025140; Wed, 18 Mar 2020 02:13:17 GMT (envelope-from jkim@FreeBSD.org) Received: (from jkim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02I2DDbF025121; Wed, 18 Mar 2020 02:13:13 GMT (envelope-from jkim@FreeBSD.org) Message-Id: <202003180213.02I2DDbF025121@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jkim set sender to jkim@FreeBSD.org using -f From: Jung-uk Kim Date: Wed, 18 Mar 2020 02:13:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359060 - in head: . crypto/openssl crypto/openssl/apps crypto/openssl/crypto crypto/openssl/crypto/aes crypto/openssl/crypto/aes/asm crypto/openssl/crypto/aria crypto/openssl/crypto/as... X-SVN-Group: head X-SVN-Commit-Author: jkim X-SVN-Commit-Paths: in head: . crypto/openssl crypto/openssl/apps crypto/openssl/crypto crypto/openssl/crypto/aes crypto/openssl/crypto/aes/asm crypto/openssl/crypto/aria crypto/openssl/crypto/asn1 crypto/openssl/crypto/... X-SVN-Commit-Revision: 359060 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 02:13:18 -0000 Author: jkim Date: Wed Mar 18 02:13:12 2020 New Revision: 359060 URL: https://svnweb.freebsd.org/changeset/base/359060 Log: Merge OpenSSL 1.1.1e. Added: head/crypto/openssl/crypto/aes/aes_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/aes/aes_local.h head/crypto/openssl/crypto/asn1/asn1_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/asn1/asn1_local.h head/crypto/openssl/crypto/async/async_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/async/async_local.h head/crypto/openssl/crypto/bf/bf_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/bf/bf_local.h head/crypto/openssl/crypto/bio/bio_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/bio/bio_local.h head/crypto/openssl/crypto/blake2/blake2_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/blake2/blake2_local.h head/crypto/openssl/crypto/bn/bn_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/bn/bn_local.h head/crypto/openssl/crypto/camellia/cmll_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/camellia/cmll_local.h head/crypto/openssl/crypto/cast/cast_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/cast/cast_local.h head/crypto/openssl/crypto/cms/cms_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/cms/cms_local.h head/crypto/openssl/crypto/comp/comp_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/comp/comp_local.h head/crypto/openssl/crypto/conf/conf_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/conf/conf_local.h head/crypto/openssl/crypto/ct/ct_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/ct/ct_local.h head/crypto/openssl/crypto/des/des_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/des/des_local.h head/crypto/openssl/crypto/dh/dh_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/dh/dh_local.h head/crypto/openssl/crypto/dsa/dsa_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/dsa/dsa_local.h head/crypto/openssl/crypto/dso/dso_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/dso/dso_local.h head/crypto/openssl/crypto/ec/curve448/curve448_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/ec/curve448/curve448_local.h head/crypto/openssl/crypto/ec/ec_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/ec/ec_local.h head/crypto/openssl/crypto/engine/eng_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/engine/eng_local.h head/crypto/openssl/crypto/evp/evp_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/evp/evp_local.h head/crypto/openssl/crypto/hmac/hmac_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/hmac/hmac_local.h head/crypto/openssl/crypto/idea/idea_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/idea/idea_local.h head/crypto/openssl/crypto/lhash/lhash_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/lhash/lhash_local.h head/crypto/openssl/crypto/md4/md4_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/md4/md4_local.h head/crypto/openssl/crypto/md5/md5_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/md5/md5_local.h head/crypto/openssl/crypto/modes/modes_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/modes/modes_local.h head/crypto/openssl/crypto/objects/obj_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/objects/obj_local.h head/crypto/openssl/crypto/ocsp/ocsp_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/ocsp/ocsp_local.h head/crypto/openssl/crypto/pkcs12/p12_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/pkcs12/p12_local.h head/crypto/openssl/crypto/rand/rand_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/rand/rand_local.h head/crypto/openssl/crypto/rc2/rc2_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/rc2/rc2_local.h head/crypto/openssl/crypto/rc4/rc4_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/rc4/rc4_local.h head/crypto/openssl/crypto/rc5/rc5_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/rc5/rc5_local.h head/crypto/openssl/crypto/ripemd/rmd_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/ripemd/rmd_local.h head/crypto/openssl/crypto/rsa/rsa_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/rsa/rsa_local.h head/crypto/openssl/crypto/seed/seed_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/seed/seed_local.h head/crypto/openssl/crypto/sha/sha_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/sha/sha_local.h head/crypto/openssl/crypto/sm3/sm3_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/sm3/sm3_local.h head/crypto/openssl/crypto/store/store_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/store/store_local.h head/crypto/openssl/crypto/ts/ts_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/ts/ts_local.h head/crypto/openssl/crypto/ui/ui_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/ui/ui_local.h head/crypto/openssl/crypto/whrlpool/wp_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/whrlpool/wp_local.h head/crypto/openssl/crypto/x509/x509_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/x509/x509_local.h head/crypto/openssl/crypto/x509v3/pcy_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/crypto/x509v3/pcy_local.h head/crypto/openssl/doc/man3/EVP_PKEY_size.pod - copied unchanged from r359051, vendor-crypto/openssl/dist/doc/man3/EVP_PKEY_size.pod head/crypto/openssl/doc/man3/X509_LOOKUP.pod - copied unchanged from r359051, vendor-crypto/openssl/dist/doc/man3/X509_LOOKUP.pod head/crypto/openssl/doc/man7/proxy-certificates.pod - copied unchanged from r359051, vendor-crypto/openssl/dist/doc/man7/proxy-certificates.pod head/crypto/openssl/include/crypto/ - copied from r359051, vendor-crypto/openssl/dist/include/crypto/ head/crypto/openssl/include/crypto/bn_conf.h - copied, changed from r359059, head/crypto/openssl/crypto/include/internal/bn_conf.h head/crypto/openssl/include/crypto/dso_conf.h - copied, changed from r359059, head/crypto/openssl/crypto/include/internal/dso_conf.h head/crypto/openssl/include/internal/constant_time.h - copied unchanged from r359051, vendor-crypto/openssl/dist/include/internal/constant_time.h head/crypto/openssl/ssl/packet_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/ssl/packet_local.h head/crypto/openssl/ssl/record/record_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/ssl/record/record_local.h head/crypto/openssl/ssl/ssl_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/ssl/ssl_local.h head/crypto/openssl/ssl/statem/statem_local.h - copied unchanged from r359051, vendor-crypto/openssl/dist/ssl/statem/statem_local.h head/secure/lib/libcrypto/man/man3/EVP_PKEY_size.3 (contents, props changed) head/secure/lib/libcrypto/man/man3/X509_LOOKUP.3 (contents, props changed) head/secure/lib/libcrypto/man/man7/proxy-certificates.7 (contents, props changed) Deleted: head/crypto/openssl/crypto/aes/aes_locl.h head/crypto/openssl/crypto/asn1/asn1_locl.h head/crypto/openssl/crypto/async/async_locl.h head/crypto/openssl/crypto/bf/bf_locl.h head/crypto/openssl/crypto/bio/bio_lcl.h head/crypto/openssl/crypto/blake2/blake2_locl.h head/crypto/openssl/crypto/bn/bn_lcl.h head/crypto/openssl/crypto/camellia/cmll_locl.h head/crypto/openssl/crypto/cast/cast_lcl.h head/crypto/openssl/crypto/cms/cms_lcl.h head/crypto/openssl/crypto/comp/comp_lcl.h head/crypto/openssl/crypto/conf/conf_lcl.h head/crypto/openssl/crypto/ct/ct_locl.h head/crypto/openssl/crypto/des/des_locl.h head/crypto/openssl/crypto/dh/dh_locl.h head/crypto/openssl/crypto/dsa/dsa_locl.h head/crypto/openssl/crypto/dso/dso_locl.h head/crypto/openssl/crypto/ec/curve448/curve448_lcl.h head/crypto/openssl/crypto/ec/ec_lcl.h head/crypto/openssl/crypto/engine/eng_int.h head/crypto/openssl/crypto/evp/evp_locl.h head/crypto/openssl/crypto/hmac/hmac_lcl.h head/crypto/openssl/crypto/idea/idea_lcl.h head/crypto/openssl/crypto/include/internal/bn_conf.h head/crypto/openssl/crypto/include/internal/dso_conf.h head/crypto/openssl/crypto/lhash/lhash_lcl.h head/crypto/openssl/crypto/md4/md4_locl.h head/crypto/openssl/crypto/md5/md5_locl.h head/crypto/openssl/crypto/modes/modes_lcl.h head/crypto/openssl/crypto/objects/obj_lcl.h head/crypto/openssl/crypto/ocsp/ocsp_lcl.h head/crypto/openssl/crypto/pkcs12/p12_lcl.h head/crypto/openssl/crypto/rand/rand_lcl.h head/crypto/openssl/crypto/rc2/rc2_locl.h head/crypto/openssl/crypto/rc4/rc4_locl.h head/crypto/openssl/crypto/rc5/rc5_locl.h head/crypto/openssl/crypto/ripemd/rmd_locl.h head/crypto/openssl/crypto/rsa/rsa_locl.h head/crypto/openssl/crypto/seed/seed_locl.h head/crypto/openssl/crypto/sha/sha_locl.h head/crypto/openssl/crypto/sm3/sm3_locl.h head/crypto/openssl/crypto/store/store_locl.h head/crypto/openssl/crypto/ts/ts_lcl.h head/crypto/openssl/crypto/ui/ui_locl.h head/crypto/openssl/crypto/whrlpool/wp_locl.h head/crypto/openssl/crypto/x509/x509_lcl.h head/crypto/openssl/crypto/x509v3/pcy_int.h head/crypto/openssl/doc/HOWTO/proxy_certificates.txt head/crypto/openssl/include/internal/constant_time_locl.h head/crypto/openssl/ssl/packet_locl.h head/crypto/openssl/ssl/record/record_locl.h head/crypto/openssl/ssl/ssl_locl.h head/crypto/openssl/ssl/statem/statem_locl.h Modified: head/ObsoleteFiles.inc head/crypto/openssl/CHANGES head/crypto/openssl/CONTRIBUTING head/crypto/openssl/Configure head/crypto/openssl/INSTALL head/crypto/openssl/NEWS head/crypto/openssl/README head/crypto/openssl/apps/apps.c head/crypto/openssl/apps/apps.h head/crypto/openssl/apps/dgst.c head/crypto/openssl/apps/enc.c head/crypto/openssl/apps/ocsp.c head/crypto/openssl/apps/openssl.c head/crypto/openssl/apps/passwd.c head/crypto/openssl/apps/pkcs12.c head/crypto/openssl/apps/pkeyutl.c head/crypto/openssl/apps/req.c head/crypto/openssl/apps/s_cb.c head/crypto/openssl/apps/s_server.c head/crypto/openssl/apps/server.pem head/crypto/openssl/apps/speed.c head/crypto/openssl/apps/timeouts.h head/crypto/openssl/apps/ts.c head/crypto/openssl/apps/x509.c head/crypto/openssl/appveyor.yml head/crypto/openssl/build.info head/crypto/openssl/config head/crypto/openssl/crypto/LPdir_unix.c head/crypto/openssl/crypto/aes/aes_core.c head/crypto/openssl/crypto/aes/aes_ecb.c head/crypto/openssl/crypto/aes/aes_ige.c head/crypto/openssl/crypto/aes/aes_misc.c head/crypto/openssl/crypto/aes/aes_x86core.c head/crypto/openssl/crypto/aes/asm/aes-armv4.pl head/crypto/openssl/crypto/aes/asm/aes-c64xplus.pl head/crypto/openssl/crypto/aes/asm/aes-mips.pl head/crypto/openssl/crypto/aes/asm/aes-parisc.pl head/crypto/openssl/crypto/aes/asm/aes-ppc.pl head/crypto/openssl/crypto/aes/asm/aes-s390x.pl head/crypto/openssl/crypto/aes/asm/aes-sparcv9.pl head/crypto/openssl/crypto/aes/asm/aesfx-sparcv9.pl head/crypto/openssl/crypto/aes/asm/aesni-mb-x86_64.pl head/crypto/openssl/crypto/aes/asm/aesni-sha1-x86_64.pl head/crypto/openssl/crypto/aes/asm/aesni-sha256-x86_64.pl head/crypto/openssl/crypto/aes/asm/aesni-x86.pl head/crypto/openssl/crypto/aes/asm/aesni-x86_64.pl head/crypto/openssl/crypto/aes/asm/aesp8-ppc.pl head/crypto/openssl/crypto/aes/asm/aest4-sparcv9.pl head/crypto/openssl/crypto/aes/asm/aesv8-armx.pl head/crypto/openssl/crypto/aes/asm/bsaes-armv7.pl head/crypto/openssl/crypto/aes/asm/vpaes-armv8.pl head/crypto/openssl/crypto/aes/asm/vpaes-ppc.pl head/crypto/openssl/crypto/aes/asm/vpaes-x86.pl head/crypto/openssl/crypto/aes/asm/vpaes-x86_64.pl head/crypto/openssl/crypto/aria/aria.c head/crypto/openssl/crypto/arm64cpuid.pl head/crypto/openssl/crypto/arm_arch.h head/crypto/openssl/crypto/armv4cpuid.pl head/crypto/openssl/crypto/asn1/a_bitstr.c head/crypto/openssl/crypto/asn1/a_d2i_fp.c head/crypto/openssl/crypto/asn1/a_gentm.c head/crypto/openssl/crypto/asn1/a_int.c head/crypto/openssl/crypto/asn1/a_mbstr.c head/crypto/openssl/crypto/asn1/a_object.c head/crypto/openssl/crypto/asn1/a_print.c head/crypto/openssl/crypto/asn1/a_sign.c head/crypto/openssl/crypto/asn1/a_strex.c head/crypto/openssl/crypto/asn1/a_time.c head/crypto/openssl/crypto/asn1/a_type.c head/crypto/openssl/crypto/asn1/a_utctm.c head/crypto/openssl/crypto/asn1/a_verify.c head/crypto/openssl/crypto/asn1/ameth_lib.c head/crypto/openssl/crypto/asn1/asn1_lib.c head/crypto/openssl/crypto/asn1/asn1_par.c head/crypto/openssl/crypto/asn1/asn_mime.c head/crypto/openssl/crypto/asn1/asn_moid.c head/crypto/openssl/crypto/asn1/charmap.h head/crypto/openssl/crypto/asn1/d2i_pr.c head/crypto/openssl/crypto/asn1/d2i_pu.c head/crypto/openssl/crypto/asn1/f_int.c head/crypto/openssl/crypto/asn1/f_string.c head/crypto/openssl/crypto/asn1/i2d_pr.c head/crypto/openssl/crypto/asn1/p8_pkey.c head/crypto/openssl/crypto/asn1/t_pkey.c head/crypto/openssl/crypto/asn1/tasn_dec.c head/crypto/openssl/crypto/asn1/tasn_enc.c head/crypto/openssl/crypto/asn1/tasn_fre.c head/crypto/openssl/crypto/asn1/tasn_new.c head/crypto/openssl/crypto/asn1/tasn_prn.c head/crypto/openssl/crypto/asn1/tasn_scn.c head/crypto/openssl/crypto/asn1/tasn_utl.c head/crypto/openssl/crypto/asn1/x_algor.c head/crypto/openssl/crypto/asn1/x_bignum.c head/crypto/openssl/crypto/asn1/x_int64.c head/crypto/openssl/crypto/asn1/x_sig.c head/crypto/openssl/crypto/async/arch/async_null.c head/crypto/openssl/crypto/async/arch/async_posix.c head/crypto/openssl/crypto/async/arch/async_posix.h head/crypto/openssl/crypto/async/async.c head/crypto/openssl/crypto/async/async_wait.c head/crypto/openssl/crypto/bf/asm/bf-586.pl head/crypto/openssl/crypto/bf/bf_cfb64.c head/crypto/openssl/crypto/bf/bf_ecb.c head/crypto/openssl/crypto/bf/bf_enc.c head/crypto/openssl/crypto/bf/bf_ofb64.c head/crypto/openssl/crypto/bf/bf_skey.c head/crypto/openssl/crypto/bio/b_addr.c head/crypto/openssl/crypto/bio/b_dump.c head/crypto/openssl/crypto/bio/b_print.c head/crypto/openssl/crypto/bio/b_sock.c head/crypto/openssl/crypto/bio/b_sock2.c head/crypto/openssl/crypto/bio/bf_buff.c head/crypto/openssl/crypto/bio/bf_lbuf.c head/crypto/openssl/crypto/bio/bf_nbio.c head/crypto/openssl/crypto/bio/bf_null.c head/crypto/openssl/crypto/bio/bio_cb.c head/crypto/openssl/crypto/bio/bio_lib.c head/crypto/openssl/crypto/bio/bio_meth.c head/crypto/openssl/crypto/bio/bss_acpt.c head/crypto/openssl/crypto/bio/bss_bio.c head/crypto/openssl/crypto/bio/bss_conn.c head/crypto/openssl/crypto/bio/bss_dgram.c head/crypto/openssl/crypto/bio/bss_fd.c head/crypto/openssl/crypto/bio/bss_file.c head/crypto/openssl/crypto/bio/bss_log.c head/crypto/openssl/crypto/bio/bss_mem.c head/crypto/openssl/crypto/bio/bss_null.c head/crypto/openssl/crypto/bio/bss_sock.c head/crypto/openssl/crypto/blake2/blake2b.c head/crypto/openssl/crypto/blake2/blake2s.c head/crypto/openssl/crypto/blake2/m_blake2b.c head/crypto/openssl/crypto/blake2/m_blake2s.c head/crypto/openssl/crypto/bn/README.pod head/crypto/openssl/crypto/bn/asm/armv4-gf2m.pl head/crypto/openssl/crypto/bn/asm/armv4-mont.pl head/crypto/openssl/crypto/bn/asm/armv8-mont.pl head/crypto/openssl/crypto/bn/asm/bn-586.pl head/crypto/openssl/crypto/bn/asm/c64xplus-gf2m.pl head/crypto/openssl/crypto/bn/asm/co-586.pl head/crypto/openssl/crypto/bn/asm/ia64-mont.pl head/crypto/openssl/crypto/bn/asm/mips-mont.pl head/crypto/openssl/crypto/bn/asm/mips.pl head/crypto/openssl/crypto/bn/asm/parisc-mont.pl head/crypto/openssl/crypto/bn/asm/ppc-mont.pl head/crypto/openssl/crypto/bn/asm/ppc.pl head/crypto/openssl/crypto/bn/asm/ppc64-mont.pl head/crypto/openssl/crypto/bn/asm/rsaz-avx2.pl head/crypto/openssl/crypto/bn/asm/rsaz-x86_64.pl head/crypto/openssl/crypto/bn/asm/s390x-gf2m.pl head/crypto/openssl/crypto/bn/asm/s390x-mont.pl head/crypto/openssl/crypto/bn/asm/s390x.S head/crypto/openssl/crypto/bn/asm/sparct4-mont.pl head/crypto/openssl/crypto/bn/asm/sparcv9-gf2m.pl head/crypto/openssl/crypto/bn/asm/sparcv9-mont.pl head/crypto/openssl/crypto/bn/asm/sparcv9a-mont.pl head/crypto/openssl/crypto/bn/asm/via-mont.pl head/crypto/openssl/crypto/bn/asm/vis3-mont.pl head/crypto/openssl/crypto/bn/asm/x86-gf2m.pl head/crypto/openssl/crypto/bn/asm/x86-mont.pl head/crypto/openssl/crypto/bn/asm/x86_64-gcc.c head/crypto/openssl/crypto/bn/asm/x86_64-gf2m.pl head/crypto/openssl/crypto/bn/asm/x86_64-mont.pl head/crypto/openssl/crypto/bn/asm/x86_64-mont5.pl head/crypto/openssl/crypto/bn/bn_add.c head/crypto/openssl/crypto/bn/bn_asm.c head/crypto/openssl/crypto/bn/bn_blind.c head/crypto/openssl/crypto/bn/bn_ctx.c head/crypto/openssl/crypto/bn/bn_depr.c head/crypto/openssl/crypto/bn/bn_dh.c head/crypto/openssl/crypto/bn/bn_div.c head/crypto/openssl/crypto/bn/bn_exp.c head/crypto/openssl/crypto/bn/bn_exp2.c head/crypto/openssl/crypto/bn/bn_gcd.c head/crypto/openssl/crypto/bn/bn_gf2m.c head/crypto/openssl/crypto/bn/bn_intern.c head/crypto/openssl/crypto/bn/bn_kron.c head/crypto/openssl/crypto/bn/bn_lib.c head/crypto/openssl/crypto/bn/bn_mod.c head/crypto/openssl/crypto/bn/bn_mont.c head/crypto/openssl/crypto/bn/bn_mpi.c head/crypto/openssl/crypto/bn/bn_mul.c head/crypto/openssl/crypto/bn/bn_nist.c head/crypto/openssl/crypto/bn/bn_prime.c head/crypto/openssl/crypto/bn/bn_prime.h head/crypto/openssl/crypto/bn/bn_print.c head/crypto/openssl/crypto/bn/bn_rand.c head/crypto/openssl/crypto/bn/bn_recp.c head/crypto/openssl/crypto/bn/bn_shift.c head/crypto/openssl/crypto/bn/bn_sqr.c head/crypto/openssl/crypto/bn/bn_sqrt.c head/crypto/openssl/crypto/bn/bn_srp.c head/crypto/openssl/crypto/bn/bn_word.c head/crypto/openssl/crypto/bn/bn_x931p.c head/crypto/openssl/crypto/bn/build.info head/crypto/openssl/crypto/bn/rsaz_exp.h head/crypto/openssl/crypto/c64xpluscpuid.pl head/crypto/openssl/crypto/camellia/asm/cmll-x86.pl head/crypto/openssl/crypto/camellia/asm/cmll-x86_64.pl head/crypto/openssl/crypto/camellia/asm/cmllt4-sparcv9.pl head/crypto/openssl/crypto/camellia/camellia.c head/crypto/openssl/crypto/camellia/cmll_ecb.c head/crypto/openssl/crypto/camellia/cmll_misc.c head/crypto/openssl/crypto/cast/asm/cast-586.pl head/crypto/openssl/crypto/cast/c_cfb64.c head/crypto/openssl/crypto/cast/c_ecb.c head/crypto/openssl/crypto/cast/c_enc.c head/crypto/openssl/crypto/cast/c_ofb64.c head/crypto/openssl/crypto/cast/c_skey.c head/crypto/openssl/crypto/chacha/asm/chacha-armv4.pl head/crypto/openssl/crypto/chacha/asm/chacha-armv8.pl head/crypto/openssl/crypto/chacha/asm/chacha-c64xplus.pl head/crypto/openssl/crypto/chacha/asm/chacha-ppc.pl head/crypto/openssl/crypto/chacha/asm/chacha-s390x.pl head/crypto/openssl/crypto/chacha/asm/chacha-x86.pl head/crypto/openssl/crypto/chacha/asm/chacha-x86_64.pl head/crypto/openssl/crypto/chacha/chacha_enc.c head/crypto/openssl/crypto/cmac/cm_ameth.c head/crypto/openssl/crypto/cmac/cm_pmeth.c head/crypto/openssl/crypto/cms/cms_asn1.c head/crypto/openssl/crypto/cms/cms_att.c head/crypto/openssl/crypto/cms/cms_cd.c head/crypto/openssl/crypto/cms/cms_dd.c head/crypto/openssl/crypto/cms/cms_enc.c head/crypto/openssl/crypto/cms/cms_env.c head/crypto/openssl/crypto/cms/cms_ess.c head/crypto/openssl/crypto/cms/cms_io.c head/crypto/openssl/crypto/cms/cms_kari.c head/crypto/openssl/crypto/cms/cms_lib.c head/crypto/openssl/crypto/cms/cms_pwri.c head/crypto/openssl/crypto/cms/cms_sd.c head/crypto/openssl/crypto/cms/cms_smime.c head/crypto/openssl/crypto/comp/c_zlib.c head/crypto/openssl/crypto/comp/comp_lib.c head/crypto/openssl/crypto/conf/conf_def.c head/crypto/openssl/crypto/conf/conf_def.h head/crypto/openssl/crypto/conf/conf_lib.c head/crypto/openssl/crypto/conf/conf_mall.c head/crypto/openssl/crypto/conf/conf_ssl.c head/crypto/openssl/crypto/cryptlib.c head/crypto/openssl/crypto/ct/ct_b64.c head/crypto/openssl/crypto/ct/ct_oct.c head/crypto/openssl/crypto/ct/ct_policy.c head/crypto/openssl/crypto/ct/ct_prn.c head/crypto/openssl/crypto/ct/ct_sct.c head/crypto/openssl/crypto/ct/ct_sct_ctx.c head/crypto/openssl/crypto/ct/ct_vfy.c head/crypto/openssl/crypto/ct/ct_x509v3.c head/crypto/openssl/crypto/ctype.c head/crypto/openssl/crypto/des/asm/crypt586.pl head/crypto/openssl/crypto/des/asm/des-586.pl head/crypto/openssl/crypto/des/asm/des_enc.m4 head/crypto/openssl/crypto/des/asm/dest4-sparcv9.pl head/crypto/openssl/crypto/des/cbc_cksm.c head/crypto/openssl/crypto/des/cfb64ede.c head/crypto/openssl/crypto/des/cfb64enc.c head/crypto/openssl/crypto/des/cfb_enc.c head/crypto/openssl/crypto/des/des_enc.c head/crypto/openssl/crypto/des/ecb3_enc.c head/crypto/openssl/crypto/des/ecb_enc.c head/crypto/openssl/crypto/des/fcrypt.c head/crypto/openssl/crypto/des/fcrypt_b.c head/crypto/openssl/crypto/des/ncbc_enc.c head/crypto/openssl/crypto/des/ofb64ede.c head/crypto/openssl/crypto/des/ofb64enc.c head/crypto/openssl/crypto/des/ofb_enc.c head/crypto/openssl/crypto/des/pcbc_enc.c head/crypto/openssl/crypto/des/qud_cksm.c head/crypto/openssl/crypto/des/set_key.c head/crypto/openssl/crypto/des/str2key.c head/crypto/openssl/crypto/des/xcbc_enc.c head/crypto/openssl/crypto/dh/dh_ameth.c head/crypto/openssl/crypto/dh/dh_asn1.c head/crypto/openssl/crypto/dh/dh_check.c head/crypto/openssl/crypto/dh/dh_gen.c head/crypto/openssl/crypto/dh/dh_key.c head/crypto/openssl/crypto/dh/dh_lib.c head/crypto/openssl/crypto/dh/dh_meth.c head/crypto/openssl/crypto/dh/dh_pmeth.c head/crypto/openssl/crypto/dh/dh_rfc5114.c head/crypto/openssl/crypto/dh/dh_rfc7919.c head/crypto/openssl/crypto/dllmain.c head/crypto/openssl/crypto/dsa/dsa_ameth.c head/crypto/openssl/crypto/dsa/dsa_asn1.c head/crypto/openssl/crypto/dsa/dsa_gen.c head/crypto/openssl/crypto/dsa/dsa_key.c head/crypto/openssl/crypto/dsa/dsa_lib.c head/crypto/openssl/crypto/dsa/dsa_meth.c head/crypto/openssl/crypto/dsa/dsa_ossl.c head/crypto/openssl/crypto/dsa/dsa_pmeth.c head/crypto/openssl/crypto/dsa/dsa_sign.c head/crypto/openssl/crypto/dsa/dsa_vrf.c head/crypto/openssl/crypto/dso/dso_dl.c head/crypto/openssl/crypto/dso/dso_dlfcn.c head/crypto/openssl/crypto/dso/dso_lib.c head/crypto/openssl/crypto/dso/dso_openssl.c head/crypto/openssl/crypto/ec/asm/ecp_nistz256-armv4.pl head/crypto/openssl/crypto/ec/asm/ecp_nistz256-armv8.pl head/crypto/openssl/crypto/ec/asm/ecp_nistz256-avx2.pl head/crypto/openssl/crypto/ec/asm/ecp_nistz256-ppc64.pl head/crypto/openssl/crypto/ec/asm/ecp_nistz256-sparcv9.pl head/crypto/openssl/crypto/ec/asm/ecp_nistz256-x86.pl head/crypto/openssl/crypto/ec/asm/ecp_nistz256-x86_64.pl head/crypto/openssl/crypto/ec/asm/x25519-ppc64.pl head/crypto/openssl/crypto/ec/asm/x25519-x86_64.pl head/crypto/openssl/crypto/ec/curve25519.c head/crypto/openssl/crypto/ec/curve448/arch_32/arch_intrinsics.h head/crypto/openssl/crypto/ec/curve448/arch_32/f_impl.h head/crypto/openssl/crypto/ec/curve448/curve448.c head/crypto/openssl/crypto/ec/curve448/curve448utils.h head/crypto/openssl/crypto/ec/curve448/ed448.h head/crypto/openssl/crypto/ec/curve448/eddsa.c head/crypto/openssl/crypto/ec/curve448/field.h head/crypto/openssl/crypto/ec/curve448/point_448.h head/crypto/openssl/crypto/ec/curve448/word.h head/crypto/openssl/crypto/ec/ec2_oct.c head/crypto/openssl/crypto/ec/ec2_smpl.c head/crypto/openssl/crypto/ec/ec_ameth.c head/crypto/openssl/crypto/ec/ec_asn1.c head/crypto/openssl/crypto/ec/ec_check.c head/crypto/openssl/crypto/ec/ec_curve.c head/crypto/openssl/crypto/ec/ec_cvt.c head/crypto/openssl/crypto/ec/ec_key.c head/crypto/openssl/crypto/ec/ec_kmeth.c head/crypto/openssl/crypto/ec/ec_lib.c head/crypto/openssl/crypto/ec/ec_mult.c head/crypto/openssl/crypto/ec/ec_oct.c head/crypto/openssl/crypto/ec/ec_pmeth.c head/crypto/openssl/crypto/ec/ec_print.c head/crypto/openssl/crypto/ec/ecdh_kdf.c head/crypto/openssl/crypto/ec/ecdh_ossl.c head/crypto/openssl/crypto/ec/ecdsa_ossl.c head/crypto/openssl/crypto/ec/ecdsa_sign.c head/crypto/openssl/crypto/ec/ecdsa_vrf.c head/crypto/openssl/crypto/ec/ecp_mont.c head/crypto/openssl/crypto/ec/ecp_nist.c head/crypto/openssl/crypto/ec/ecp_nistp224.c head/crypto/openssl/crypto/ec/ecp_nistp256.c head/crypto/openssl/crypto/ec/ecp_nistp521.c head/crypto/openssl/crypto/ec/ecp_nistputil.c head/crypto/openssl/crypto/ec/ecp_nistz256.c head/crypto/openssl/crypto/ec/ecp_oct.c head/crypto/openssl/crypto/ec/ecp_smpl.c head/crypto/openssl/crypto/ec/ecx_meth.c head/crypto/openssl/crypto/engine/README head/crypto/openssl/crypto/engine/eng_all.c head/crypto/openssl/crypto/engine/eng_cnf.c head/crypto/openssl/crypto/engine/eng_ctrl.c head/crypto/openssl/crypto/engine/eng_devcrypto.c head/crypto/openssl/crypto/engine/eng_dyn.c head/crypto/openssl/crypto/engine/eng_fat.c head/crypto/openssl/crypto/engine/eng_init.c head/crypto/openssl/crypto/engine/eng_lib.c head/crypto/openssl/crypto/engine/eng_list.c head/crypto/openssl/crypto/engine/eng_openssl.c head/crypto/openssl/crypto/engine/eng_pkey.c head/crypto/openssl/crypto/engine/eng_rdrand.c head/crypto/openssl/crypto/engine/eng_table.c head/crypto/openssl/crypto/engine/tb_asnmth.c head/crypto/openssl/crypto/engine/tb_cipher.c head/crypto/openssl/crypto/engine/tb_dh.c head/crypto/openssl/crypto/engine/tb_digest.c head/crypto/openssl/crypto/engine/tb_dsa.c head/crypto/openssl/crypto/engine/tb_eckey.c head/crypto/openssl/crypto/engine/tb_pkmeth.c head/crypto/openssl/crypto/engine/tb_rand.c head/crypto/openssl/crypto/engine/tb_rsa.c head/crypto/openssl/crypto/err/err.c head/crypto/openssl/crypto/err/err_all.c head/crypto/openssl/crypto/err/openssl.txt head/crypto/openssl/crypto/evp/bio_md.c head/crypto/openssl/crypto/evp/bio_ok.c head/crypto/openssl/crypto/evp/c_allc.c head/crypto/openssl/crypto/evp/c_alld.c head/crypto/openssl/crypto/evp/cmeth_lib.c head/crypto/openssl/crypto/evp/digest.c head/crypto/openssl/crypto/evp/e_aes.c head/crypto/openssl/crypto/evp/e_aes_cbc_hmac_sha1.c head/crypto/openssl/crypto/evp/e_aes_cbc_hmac_sha256.c head/crypto/openssl/crypto/evp/e_aria.c head/crypto/openssl/crypto/evp/e_bf.c head/crypto/openssl/crypto/evp/e_camellia.c head/crypto/openssl/crypto/evp/e_cast.c head/crypto/openssl/crypto/evp/e_chacha20_poly1305.c head/crypto/openssl/crypto/evp/e_des.c head/crypto/openssl/crypto/evp/e_des3.c head/crypto/openssl/crypto/evp/e_idea.c head/crypto/openssl/crypto/evp/e_null.c head/crypto/openssl/crypto/evp/e_rc2.c head/crypto/openssl/crypto/evp/e_rc4.c head/crypto/openssl/crypto/evp/e_rc4_hmac_md5.c head/crypto/openssl/crypto/evp/e_rc5.c head/crypto/openssl/crypto/evp/e_seed.c head/crypto/openssl/crypto/evp/e_sm4.c head/crypto/openssl/crypto/evp/e_xcbc_d.c head/crypto/openssl/crypto/evp/encode.c head/crypto/openssl/crypto/evp/evp_enc.c head/crypto/openssl/crypto/evp/evp_err.c head/crypto/openssl/crypto/evp/evp_lib.c head/crypto/openssl/crypto/evp/evp_pbe.c head/crypto/openssl/crypto/evp/evp_pkey.c head/crypto/openssl/crypto/evp/m_md2.c head/crypto/openssl/crypto/evp/m_md4.c head/crypto/openssl/crypto/evp/m_md5.c head/crypto/openssl/crypto/evp/m_md5_sha1.c head/crypto/openssl/crypto/evp/m_mdc2.c head/crypto/openssl/crypto/evp/m_null.c head/crypto/openssl/crypto/evp/m_ripemd.c head/crypto/openssl/crypto/evp/m_sha1.c head/crypto/openssl/crypto/evp/m_sha3.c head/crypto/openssl/crypto/evp/m_sigver.c head/crypto/openssl/crypto/evp/m_wp.c head/crypto/openssl/crypto/evp/names.c head/crypto/openssl/crypto/evp/p5_crpt.c head/crypto/openssl/crypto/evp/p5_crpt2.c head/crypto/openssl/crypto/evp/p_lib.c head/crypto/openssl/crypto/evp/p_sign.c head/crypto/openssl/crypto/evp/p_verify.c head/crypto/openssl/crypto/evp/pmeth_fn.c head/crypto/openssl/crypto/evp/pmeth_gn.c head/crypto/openssl/crypto/evp/pmeth_lib.c head/crypto/openssl/crypto/ex_data.c head/crypto/openssl/crypto/hmac/hm_ameth.c head/crypto/openssl/crypto/hmac/hm_pmeth.c head/crypto/openssl/crypto/hmac/hmac.c head/crypto/openssl/crypto/idea/i_cbc.c head/crypto/openssl/crypto/idea/i_cfb64.c head/crypto/openssl/crypto/idea/i_ecb.c head/crypto/openssl/crypto/idea/i_ofb64.c head/crypto/openssl/crypto/idea/i_skey.c head/crypto/openssl/crypto/init.c head/crypto/openssl/crypto/kdf/hkdf.c head/crypto/openssl/crypto/kdf/scrypt.c head/crypto/openssl/crypto/kdf/tls1_prf.c head/crypto/openssl/crypto/lhash/lh_stats.c head/crypto/openssl/crypto/lhash/lhash.c head/crypto/openssl/crypto/md4/md4_dgst.c head/crypto/openssl/crypto/md5/asm/md5-586.pl head/crypto/openssl/crypto/md5/asm/md5-sparcv9.pl head/crypto/openssl/crypto/md5/asm/md5-x86_64.pl head/crypto/openssl/crypto/md5/md5_dgst.c head/crypto/openssl/crypto/mem.c head/crypto/openssl/crypto/mips_arch.h head/crypto/openssl/crypto/modes/asm/aesni-gcm-x86_64.pl head/crypto/openssl/crypto/modes/asm/ghash-armv4.pl head/crypto/openssl/crypto/modes/asm/ghash-c64xplus.pl head/crypto/openssl/crypto/modes/asm/ghash-ia64.pl head/crypto/openssl/crypto/modes/asm/ghash-parisc.pl head/crypto/openssl/crypto/modes/asm/ghash-s390x.pl head/crypto/openssl/crypto/modes/asm/ghash-sparcv9.pl head/crypto/openssl/crypto/modes/asm/ghash-x86.pl head/crypto/openssl/crypto/modes/asm/ghash-x86_64.pl head/crypto/openssl/crypto/modes/asm/ghashp8-ppc.pl head/crypto/openssl/crypto/modes/asm/ghashv8-armx.pl head/crypto/openssl/crypto/modes/cbc128.c head/crypto/openssl/crypto/modes/ccm128.c head/crypto/openssl/crypto/modes/cfb128.c head/crypto/openssl/crypto/modes/ctr128.c head/crypto/openssl/crypto/modes/cts128.c head/crypto/openssl/crypto/modes/gcm128.c head/crypto/openssl/crypto/modes/ocb128.c head/crypto/openssl/crypto/modes/ofb128.c head/crypto/openssl/crypto/modes/xts128.c head/crypto/openssl/crypto/objects/o_names.c head/crypto/openssl/crypto/objects/obj_dat.c head/crypto/openssl/crypto/objects/obj_dat.h head/crypto/openssl/crypto/objects/obj_lib.c head/crypto/openssl/crypto/objects/obj_xref.h head/crypto/openssl/crypto/objects/objects.txt head/crypto/openssl/crypto/ocsp/ocsp_asn.c head/crypto/openssl/crypto/ocsp/ocsp_cl.c head/crypto/openssl/crypto/ocsp/ocsp_ext.c head/crypto/openssl/crypto/ocsp/ocsp_ht.c head/crypto/openssl/crypto/ocsp/ocsp_lib.c head/crypto/openssl/crypto/ocsp/ocsp_prn.c head/crypto/openssl/crypto/ocsp/ocsp_srv.c head/crypto/openssl/crypto/ocsp/ocsp_vfy.c head/crypto/openssl/crypto/ocsp/v3_ocsp.c head/crypto/openssl/crypto/pariscid.pl head/crypto/openssl/crypto/pem/pem_all.c head/crypto/openssl/crypto/pem/pem_lib.c head/crypto/openssl/crypto/pem/pem_pkey.c head/crypto/openssl/crypto/pem/pvkfmt.c head/crypto/openssl/crypto/perlasm/README head/crypto/openssl/crypto/perlasm/arm-xlate.pl head/crypto/openssl/crypto/perlasm/ppc-xlate.pl head/crypto/openssl/crypto/perlasm/x86_64-xlate.pl head/crypto/openssl/crypto/pkcs12/p12_add.c head/crypto/openssl/crypto/pkcs12/p12_asn.c head/crypto/openssl/crypto/pkcs12/p12_attr.c head/crypto/openssl/crypto/pkcs12/p12_crt.c head/crypto/openssl/crypto/pkcs12/p12_init.c head/crypto/openssl/crypto/pkcs12/p12_mutl.c head/crypto/openssl/crypto/pkcs12/p12_npas.c head/crypto/openssl/crypto/pkcs12/p12_p8e.c head/crypto/openssl/crypto/pkcs12/p12_sbag.c head/crypto/openssl/crypto/pkcs7/pk7_lib.c head/crypto/openssl/crypto/poly1305/asm/poly1305-armv4.pl head/crypto/openssl/crypto/poly1305/asm/poly1305-armv8.pl head/crypto/openssl/crypto/poly1305/asm/poly1305-mips.pl head/crypto/openssl/crypto/poly1305/asm/poly1305-ppc.pl head/crypto/openssl/crypto/poly1305/asm/poly1305-ppcfp.pl head/crypto/openssl/crypto/poly1305/asm/poly1305-s390x.pl head/crypto/openssl/crypto/poly1305/asm/poly1305-sparcv9.pl head/crypto/openssl/crypto/poly1305/asm/poly1305-x86.pl head/crypto/openssl/crypto/poly1305/asm/poly1305-x86_64.pl head/crypto/openssl/crypto/poly1305/poly1305.c head/crypto/openssl/crypto/poly1305/poly1305_ameth.c head/crypto/openssl/crypto/poly1305/poly1305_pmeth.c head/crypto/openssl/crypto/ppc_arch.h head/crypto/openssl/crypto/ppccap.c head/crypto/openssl/crypto/ppccpuid.pl head/crypto/openssl/crypto/rand/drbg_ctr.c head/crypto/openssl/crypto/rand/drbg_lib.c head/crypto/openssl/crypto/rand/rand_err.c head/crypto/openssl/crypto/rand/rand_lib.c head/crypto/openssl/crypto/rand/rand_unix.c head/crypto/openssl/crypto/rc2/rc2_cbc.c head/crypto/openssl/crypto/rc2/rc2_ecb.c head/crypto/openssl/crypto/rc2/rc2_skey.c head/crypto/openssl/crypto/rc2/rc2cfb64.c head/crypto/openssl/crypto/rc2/rc2ofb64.c head/crypto/openssl/crypto/rc4/asm/rc4-586.pl head/crypto/openssl/crypto/rc4/asm/rc4-c64xplus.pl head/crypto/openssl/crypto/rc4/asm/rc4-md5-x86_64.pl head/crypto/openssl/crypto/rc4/asm/rc4-parisc.pl head/crypto/openssl/crypto/rc4/asm/rc4-s390x.pl head/crypto/openssl/crypto/rc4/asm/rc4-x86_64.pl head/crypto/openssl/crypto/rc4/rc4_enc.c head/crypto/openssl/crypto/rc4/rc4_skey.c head/crypto/openssl/crypto/rc5/asm/rc5-586.pl head/crypto/openssl/crypto/rc5/rc5_ecb.c head/crypto/openssl/crypto/rc5/rc5_enc.c head/crypto/openssl/crypto/rc5/rc5_skey.c head/crypto/openssl/crypto/rc5/rc5cfb64.c head/crypto/openssl/crypto/rc5/rc5ofb64.c head/crypto/openssl/crypto/ripemd/asm/rmd-586.pl head/crypto/openssl/crypto/ripemd/rmd_dgst.c head/crypto/openssl/crypto/rsa/rsa_ameth.c head/crypto/openssl/crypto/rsa/rsa_asn1.c head/crypto/openssl/crypto/rsa/rsa_chk.c head/crypto/openssl/crypto/rsa/rsa_crpt.c head/crypto/openssl/crypto/rsa/rsa_gen.c head/crypto/openssl/crypto/rsa/rsa_lib.c head/crypto/openssl/crypto/rsa/rsa_meth.c head/crypto/openssl/crypto/rsa/rsa_mp.c head/crypto/openssl/crypto/rsa/rsa_oaep.c head/crypto/openssl/crypto/rsa/rsa_ossl.c head/crypto/openssl/crypto/rsa/rsa_pk1.c head/crypto/openssl/crypto/rsa/rsa_pmeth.c head/crypto/openssl/crypto/rsa/rsa_pss.c head/crypto/openssl/crypto/rsa/rsa_sign.c head/crypto/openssl/crypto/rsa/rsa_ssl.c head/crypto/openssl/crypto/rsa/rsa_x931g.c head/crypto/openssl/crypto/s390x_arch.h head/crypto/openssl/crypto/s390xcpuid.pl head/crypto/openssl/crypto/seed/seed.c head/crypto/openssl/crypto/sha/asm/keccak1600-armv4.pl head/crypto/openssl/crypto/sha/asm/keccak1600-armv8.pl head/crypto/openssl/crypto/sha/asm/keccak1600-avx2.pl head/crypto/openssl/crypto/sha/asm/keccak1600-avx512.pl head/crypto/openssl/crypto/sha/asm/keccak1600-avx512vl.pl head/crypto/openssl/crypto/sha/asm/keccak1600-c64x.pl head/crypto/openssl/crypto/sha/asm/keccak1600-mmx.pl head/crypto/openssl/crypto/sha/asm/keccak1600-ppc64.pl head/crypto/openssl/crypto/sha/asm/keccak1600-s390x.pl head/crypto/openssl/crypto/sha/asm/keccak1600-x86_64.pl head/crypto/openssl/crypto/sha/asm/keccak1600p8-ppc.pl head/crypto/openssl/crypto/sha/asm/sha1-586.pl head/crypto/openssl/crypto/sha/asm/sha1-armv4-large.pl head/crypto/openssl/crypto/sha/asm/sha1-armv8.pl head/crypto/openssl/crypto/sha/asm/sha1-c64xplus.pl head/crypto/openssl/crypto/sha/asm/sha1-mb-x86_64.pl head/crypto/openssl/crypto/sha/asm/sha1-mips.pl head/crypto/openssl/crypto/sha/asm/sha1-parisc.pl head/crypto/openssl/crypto/sha/asm/sha1-ppc.pl head/crypto/openssl/crypto/sha/asm/sha1-s390x.pl head/crypto/openssl/crypto/sha/asm/sha1-sparcv9.pl head/crypto/openssl/crypto/sha/asm/sha1-sparcv9a.pl head/crypto/openssl/crypto/sha/asm/sha1-thumb.pl head/crypto/openssl/crypto/sha/asm/sha1-x86_64.pl head/crypto/openssl/crypto/sha/asm/sha256-586.pl head/crypto/openssl/crypto/sha/asm/sha256-armv4.pl head/crypto/openssl/crypto/sha/asm/sha256-c64xplus.pl head/crypto/openssl/crypto/sha/asm/sha256-mb-x86_64.pl head/crypto/openssl/crypto/sha/asm/sha512-586.pl head/crypto/openssl/crypto/sha/asm/sha512-armv4.pl head/crypto/openssl/crypto/sha/asm/sha512-armv8.pl head/crypto/openssl/crypto/sha/asm/sha512-c64xplus.pl head/crypto/openssl/crypto/sha/asm/sha512-mips.pl head/crypto/openssl/crypto/sha/asm/sha512-parisc.pl head/crypto/openssl/crypto/sha/asm/sha512-ppc.pl head/crypto/openssl/crypto/sha/asm/sha512-s390x.pl head/crypto/openssl/crypto/sha/asm/sha512-sparcv9.pl head/crypto/openssl/crypto/sha/asm/sha512-x86_64.pl head/crypto/openssl/crypto/sha/asm/sha512p8-ppc.pl head/crypto/openssl/crypto/sha/sha1dgst.c head/crypto/openssl/crypto/sha/sha256.c head/crypto/openssl/crypto/sha/sha512.c head/crypto/openssl/crypto/siphash/siphash.c head/crypto/openssl/crypto/siphash/siphash_ameth.c head/crypto/openssl/crypto/siphash/siphash_pmeth.c head/crypto/openssl/crypto/sm2/sm2_crypt.c head/crypto/openssl/crypto/sm2/sm2_err.c head/crypto/openssl/crypto/sm2/sm2_pmeth.c head/crypto/openssl/crypto/sm2/sm2_sign.c head/crypto/openssl/crypto/sm3/m_sm3.c head/crypto/openssl/crypto/sm3/sm3.c head/crypto/openssl/crypto/sm4/sm4.c head/crypto/openssl/crypto/sparc_arch.h head/crypto/openssl/crypto/sparcv9cap.c head/crypto/openssl/crypto/srp/srp_lib.c head/crypto/openssl/crypto/srp/srp_vfy.c head/crypto/openssl/crypto/store/loader_file.c head/crypto/openssl/crypto/store/store_init.c head/crypto/openssl/crypto/store/store_lib.c head/crypto/openssl/crypto/store/store_register.c head/crypto/openssl/crypto/threads_none.c head/crypto/openssl/crypto/ts/ts_asn1.c head/crypto/openssl/crypto/ts/ts_lib.c head/crypto/openssl/crypto/ts/ts_req_print.c head/crypto/openssl/crypto/ts/ts_req_utils.c head/crypto/openssl/crypto/ts/ts_rsp_print.c head/crypto/openssl/crypto/ts/ts_rsp_sign.c head/crypto/openssl/crypto/ts/ts_rsp_utils.c head/crypto/openssl/crypto/ts/ts_rsp_verify.c head/crypto/openssl/crypto/ts/ts_verify_ctx.c head/crypto/openssl/crypto/ui/ui_lib.c head/crypto/openssl/crypto/ui/ui_null.c head/crypto/openssl/crypto/ui/ui_openssl.c head/crypto/openssl/crypto/ui/ui_util.c head/crypto/openssl/crypto/whrlpool/asm/wp-mmx.pl head/crypto/openssl/crypto/whrlpool/asm/wp-x86_64.pl head/crypto/openssl/crypto/whrlpool/wp_block.c head/crypto/openssl/crypto/whrlpool/wp_dgst.c head/crypto/openssl/crypto/x509/by_dir.c head/crypto/openssl/crypto/x509/by_file.c head/crypto/openssl/crypto/x509/t_x509.c head/crypto/openssl/crypto/x509/x509_att.c head/crypto/openssl/crypto/x509/x509_cmp.c head/crypto/openssl/crypto/x509/x509_ext.c head/crypto/openssl/crypto/x509/x509_lu.c head/crypto/openssl/crypto/x509/x509_meth.c head/crypto/openssl/crypto/x509/x509_obj.c head/crypto/openssl/crypto/x509/x509_r2x.c head/crypto/openssl/crypto/x509/x509_req.c head/crypto/openssl/crypto/x509/x509_set.c head/crypto/openssl/crypto/x509/x509_trs.c head/crypto/openssl/crypto/x509/x509_v3.c head/crypto/openssl/crypto/x509/x509_vfy.c head/crypto/openssl/crypto/x509/x509_vpm.c head/crypto/openssl/crypto/x509/x509cset.c head/crypto/openssl/crypto/x509/x509name.c head/crypto/openssl/crypto/x509/x509rset.c head/crypto/openssl/crypto/x509/x_all.c head/crypto/openssl/crypto/x509/x_attrib.c head/crypto/openssl/crypto/x509/x_crl.c head/crypto/openssl/crypto/x509/x_exten.c head/crypto/openssl/crypto/x509/x_name.c head/crypto/openssl/crypto/x509/x_pubkey.c head/crypto/openssl/crypto/x509/x_req.c head/crypto/openssl/crypto/x509/x_x509.c head/crypto/openssl/crypto/x509/x_x509a.c head/crypto/openssl/crypto/x509v3/pcy_cache.c head/crypto/openssl/crypto/x509v3/pcy_data.c head/crypto/openssl/crypto/x509v3/pcy_lib.c head/crypto/openssl/crypto/x509v3/pcy_map.c head/crypto/openssl/crypto/x509v3/pcy_node.c head/crypto/openssl/crypto/x509v3/pcy_tree.c head/crypto/openssl/crypto/x509v3/v3_addr.c head/crypto/openssl/crypto/x509v3/v3_admis.h head/crypto/openssl/crypto/x509v3/v3_alt.c head/crypto/openssl/crypto/x509v3/v3_asid.c head/crypto/openssl/crypto/x509v3/v3_conf.c head/crypto/openssl/crypto/x509v3/v3_cpols.c head/crypto/openssl/crypto/x509v3/v3_crld.c head/crypto/openssl/crypto/x509v3/v3_ncons.c head/crypto/openssl/crypto/x509v3/v3_purp.c head/crypto/openssl/crypto/x509v3/v3_skey.c head/crypto/openssl/crypto/x509v3/v3_utl.c head/crypto/openssl/crypto/x86_64cpuid.pl head/crypto/openssl/crypto/x86cpuid.pl head/crypto/openssl/doc/man1/ca.pod head/crypto/openssl/doc/man1/dgst.pod head/crypto/openssl/doc/man1/enc.pod head/crypto/openssl/doc/man1/rand.pod head/crypto/openssl/doc/man1/req.pod head/crypto/openssl/doc/man1/s_client.pod head/crypto/openssl/doc/man1/sess_id.pod head/crypto/openssl/doc/man1/x509.pod head/crypto/openssl/doc/man3/ASN1_INTEGER_get_int64.pod head/crypto/openssl/doc/man3/ASN1_TYPE_get.pod head/crypto/openssl/doc/man3/BIO_f_buffer.pod head/crypto/openssl/doc/man3/BIO_get_ex_new_index.pod head/crypto/openssl/doc/man3/DTLSv1_listen.pod head/crypto/openssl/doc/man3/EC_GROUP_copy.pod head/crypto/openssl/doc/man3/EC_GROUP_new.pod head/crypto/openssl/doc/man3/EC_POINT_new.pod head/crypto/openssl/doc/man3/EVP_DigestInit.pod head/crypto/openssl/doc/man3/EVP_DigestSignInit.pod head/crypto/openssl/doc/man3/EVP_DigestVerifyInit.pod head/crypto/openssl/doc/man3/EVP_EncryptInit.pod head/crypto/openssl/doc/man3/EVP_MD_meth_new.pod head/crypto/openssl/doc/man3/EVP_PKEY_CTX_ctrl.pod head/crypto/openssl/doc/man3/EVP_PKEY_meth_new.pod head/crypto/openssl/doc/man3/EVP_PKEY_new.pod head/crypto/openssl/doc/man3/EVP_SignInit.pod head/crypto/openssl/doc/man3/OCSP_request_add1_nonce.pod head/crypto/openssl/doc/man3/OCSP_response_status.pod head/crypto/openssl/doc/man3/OCSP_sendreq_new.pod head/crypto/openssl/doc/man3/OPENSSL_malloc.pod head/crypto/openssl/doc/man3/OPENSSL_secure_malloc.pod head/crypto/openssl/doc/man3/PEM_bytes_read_bio.pod head/crypto/openssl/doc/man3/PEM_read_bio_PrivateKey.pod head/crypto/openssl/doc/man3/PEM_read_bio_ex.pod head/crypto/openssl/doc/man3/RAND_bytes.pod head/crypto/openssl/doc/man3/RAND_set_rand_method.pod head/crypto/openssl/doc/man3/RSA_get0_key.pod head/crypto/openssl/doc/man3/SSL_CTX_sess_set_get_cb.pod head/crypto/openssl/doc/man3/SSL_CTX_set_stateless_cookie_generate_cb.pod head/crypto/openssl/doc/man3/SSL_CTX_set_tlsext_servername_callback.pod head/crypto/openssl/doc/man3/SSL_CTX_use_psk_identity_hint.pod head/crypto/openssl/doc/man3/SSL_SESSION_get0_hostname.pod head/crypto/openssl/doc/man3/SSL_accept.pod head/crypto/openssl/doc/man3/SSL_connect.pod head/crypto/openssl/doc/man3/SSL_do_handshake.pod head/crypto/openssl/doc/man3/SSL_load_client_CA_file.pod head/crypto/openssl/doc/man3/X509_LOOKUP_meth_new.pod head/crypto/openssl/doc/man3/X509_STORE_CTX_new.pod head/crypto/openssl/doc/man3/X509_STORE_add_cert.pod head/crypto/openssl/doc/man3/d2i_X509.pod head/crypto/openssl/doc/man5/config.pod head/crypto/openssl/doc/man7/Ed25519.pod head/crypto/openssl/doc/man7/X25519.pod head/crypto/openssl/doc/man7/passphrase-encoding.pod head/crypto/openssl/e_os.h head/crypto/openssl/engines/e_afalg.c head/crypto/openssl/engines/e_afalg.h head/crypto/openssl/engines/e_afalg_err.h head/crypto/openssl/engines/e_capi_err.h head/crypto/openssl/engines/e_dasync_err.h head/crypto/openssl/engines/e_ossltest_err.h head/crypto/openssl/include/internal/conf.h head/crypto/openssl/include/internal/cryptlib.h head/crypto/openssl/include/internal/dane.h head/crypto/openssl/include/internal/dso.h head/crypto/openssl/include/internal/dsoerr.h head/crypto/openssl/include/internal/err.h head/crypto/openssl/include/internal/nelem.h head/crypto/openssl/include/internal/numbers.h head/crypto/openssl/include/internal/o_dir.h head/crypto/openssl/include/internal/o_str.h head/crypto/openssl/include/internal/refcount.h head/crypto/openssl/include/internal/sockets.h head/crypto/openssl/include/internal/sslconf.h head/crypto/openssl/include/openssl/__DECC_INCLUDE_EPILOGUE.H head/crypto/openssl/include/openssl/__DECC_INCLUDE_PROLOGUE.H head/crypto/openssl/include/openssl/bio.h head/crypto/openssl/include/openssl/ct.h head/crypto/openssl/include/openssl/dsa.h head/crypto/openssl/include/openssl/dtls1.h head/crypto/openssl/include/openssl/evp.h head/crypto/openssl/include/openssl/evperr.h head/crypto/openssl/include/openssl/lhash.h head/crypto/openssl/include/openssl/obj_mac.h head/crypto/openssl/include/openssl/ocsp.h head/crypto/openssl/include/openssl/opensslv.h head/crypto/openssl/include/openssl/ossl_typ.h head/crypto/openssl/include/openssl/randerr.h head/crypto/openssl/include/openssl/rsa.h head/crypto/openssl/include/openssl/sslerr.h head/crypto/openssl/ssl/bio_ssl.c head/crypto/openssl/ssl/d1_lib.c head/crypto/openssl/ssl/d1_msg.c head/crypto/openssl/ssl/d1_srtp.c head/crypto/openssl/ssl/methods.c head/crypto/openssl/ssl/packet.c head/crypto/openssl/ssl/pqueue.c head/crypto/openssl/ssl/record/README head/crypto/openssl/ssl/record/dtls1_bitmap.c head/crypto/openssl/ssl/record/rec_layer_d1.c head/crypto/openssl/ssl/record/rec_layer_s3.c head/crypto/openssl/ssl/record/ssl3_buffer.c head/crypto/openssl/ssl/record/ssl3_record.c head/crypto/openssl/ssl/record/ssl3_record_tls13.c head/crypto/openssl/ssl/s3_cbc.c head/crypto/openssl/ssl/s3_enc.c head/crypto/openssl/ssl/s3_lib.c head/crypto/openssl/ssl/s3_msg.c head/crypto/openssl/ssl/ssl_asn1.c head/crypto/openssl/ssl/ssl_cert.c head/crypto/openssl/ssl/ssl_ciph.c head/crypto/openssl/ssl/ssl_conf.c head/crypto/openssl/ssl/ssl_err.c head/crypto/openssl/ssl/ssl_init.c head/crypto/openssl/ssl/ssl_lib.c head/crypto/openssl/ssl/ssl_mcnf.c head/crypto/openssl/ssl/ssl_rsa.c head/crypto/openssl/ssl/ssl_sess.c head/crypto/openssl/ssl/ssl_stat.c head/crypto/openssl/ssl/ssl_txt.c head/crypto/openssl/ssl/ssl_utst.c head/crypto/openssl/ssl/statem/README head/crypto/openssl/ssl/statem/extensions.c head/crypto/openssl/ssl/statem/extensions_clnt.c head/crypto/openssl/ssl/statem/extensions_cust.c head/crypto/openssl/ssl/statem/extensions_srvr.c head/crypto/openssl/ssl/statem/statem.c head/crypto/openssl/ssl/statem/statem_clnt.c head/crypto/openssl/ssl/statem/statem_dtls.c head/crypto/openssl/ssl/statem/statem_lib.c head/crypto/openssl/ssl/statem/statem_srvr.c head/crypto/openssl/ssl/t1_enc.c head/crypto/openssl/ssl/t1_lib.c head/crypto/openssl/ssl/t1_trce.c head/crypto/openssl/ssl/tls13_enc.c head/crypto/openssl/ssl/tls_srp.c head/secure/lib/libcrypto/Makefile.inc head/secure/lib/libcrypto/aarch64/ecp_nistz256-armv8.S head/secure/lib/libcrypto/aarch64/sha256-armv8.S head/secure/lib/libcrypto/aarch64/sha512-armv8.S head/secure/lib/libcrypto/amd64/aesni-gcm-x86_64.S head/secure/lib/libcrypto/amd64/aesni-mb-x86_64.S head/secure/lib/libcrypto/amd64/aesni-sha1-x86_64.S head/secure/lib/libcrypto/amd64/aesni-sha256-x86_64.S head/secure/lib/libcrypto/amd64/aesni-x86_64.S head/secure/lib/libcrypto/amd64/chacha-x86_64.S head/secure/lib/libcrypto/amd64/cmll-x86_64.S head/secure/lib/libcrypto/amd64/ecp_nistz256-x86_64.S head/secure/lib/libcrypto/amd64/ghash-x86_64.S head/secure/lib/libcrypto/amd64/keccak1600-x86_64.S head/secure/lib/libcrypto/amd64/poly1305-x86_64.S head/secure/lib/libcrypto/amd64/rc4-x86_64.S head/secure/lib/libcrypto/amd64/rsaz-avx2.S head/secure/lib/libcrypto/amd64/rsaz-x86_64.S head/secure/lib/libcrypto/amd64/sha1-mb-x86_64.S head/secure/lib/libcrypto/amd64/sha1-x86_64.S head/secure/lib/libcrypto/amd64/sha256-mb-x86_64.S head/secure/lib/libcrypto/amd64/sha256-x86_64.S head/secure/lib/libcrypto/amd64/sha512-x86_64.S head/secure/lib/libcrypto/amd64/x25519-x86_64.S head/secure/lib/libcrypto/amd64/x86_64-mont.S head/secure/lib/libcrypto/amd64/x86_64-mont5.S head/secure/lib/libcrypto/arm/aes-armv4.S head/secure/lib/libcrypto/arm/bsaes-armv7.S head/secure/lib/libcrypto/arm/ecp_nistz256-armv4.S head/secure/lib/libcrypto/arm/sha256-armv4.S head/secure/lib/libcrypto/arm/sha512-armv4.S head/secure/lib/libcrypto/i386/chacha-x86.S head/secure/lib/libcrypto/i386/ecp_nistz256-x86.S head/secure/lib/libcrypto/i386/poly1305-x86.S head/secure/lib/libcrypto/i386/sha1-586.S head/secure/lib/libcrypto/i386/sha256-586.S head/secure/lib/libcrypto/man/man3/ADMISSIONS.3 head/secure/lib/libcrypto/man/man3/ASN1_INTEGER_get_int64.3 head/secure/lib/libcrypto/man/man3/ASN1_ITEM_lookup.3 head/secure/lib/libcrypto/man/man3/ASN1_OBJECT_new.3 head/secure/lib/libcrypto/man/man3/ASN1_STRING_TABLE_add.3 head/secure/lib/libcrypto/man/man3/ASN1_STRING_length.3 head/secure/lib/libcrypto/man/man3/ASN1_STRING_new.3 head/secure/lib/libcrypto/man/man3/ASN1_STRING_print_ex.3 head/secure/lib/libcrypto/man/man3/ASN1_TIME_set.3 head/secure/lib/libcrypto/man/man3/ASN1_TYPE_get.3 head/secure/lib/libcrypto/man/man3/ASN1_generate_nconf.3 head/secure/lib/libcrypto/man/man3/ASYNC_WAIT_CTX_new.3 head/secure/lib/libcrypto/man/man3/ASYNC_start_job.3 head/secure/lib/libcrypto/man/man3/BF_encrypt.3 head/secure/lib/libcrypto/man/man3/BIO_ADDR.3 head/secure/lib/libcrypto/man/man3/BIO_ADDRINFO.3 head/secure/lib/libcrypto/man/man3/BIO_connect.3 head/secure/lib/libcrypto/man/man3/BIO_ctrl.3 head/secure/lib/libcrypto/man/man3/BIO_f_base64.3 head/secure/lib/libcrypto/man/man3/BIO_f_buffer.3 head/secure/lib/libcrypto/man/man3/BIO_f_cipher.3 head/secure/lib/libcrypto/man/man3/BIO_f_md.3 head/secure/lib/libcrypto/man/man3/BIO_f_null.3 head/secure/lib/libcrypto/man/man3/BIO_f_ssl.3 head/secure/lib/libcrypto/man/man3/BIO_find_type.3 head/secure/lib/libcrypto/man/man3/BIO_get_data.3 head/secure/lib/libcrypto/man/man3/BIO_get_ex_new_index.3 head/secure/lib/libcrypto/man/man3/BIO_meth_new.3 head/secure/lib/libcrypto/man/man3/BIO_new.3 head/secure/lib/libcrypto/man/man3/BIO_new_CMS.3 head/secure/lib/libcrypto/man/man3/BIO_parse_hostserv.3 head/secure/lib/libcrypto/man/man3/BIO_printf.3 head/secure/lib/libcrypto/man/man3/BIO_push.3 head/secure/lib/libcrypto/man/man3/BIO_read.3 head/secure/lib/libcrypto/man/man3/BIO_s_accept.3 head/secure/lib/libcrypto/man/man3/BIO_s_bio.3 head/secure/lib/libcrypto/man/man3/BIO_s_connect.3 head/secure/lib/libcrypto/man/man3/BIO_s_fd.3 head/secure/lib/libcrypto/man/man3/BIO_s_file.3 head/secure/lib/libcrypto/man/man3/BIO_s_mem.3 head/secure/lib/libcrypto/man/man3/BIO_s_null.3 head/secure/lib/libcrypto/man/man3/BIO_s_socket.3 head/secure/lib/libcrypto/man/man3/BIO_set_callback.3 head/secure/lib/libcrypto/man/man3/BIO_should_retry.3 head/secure/lib/libcrypto/man/man3/BN_BLINDING_new.3 head/secure/lib/libcrypto/man/man3/BN_CTX_new.3 head/secure/lib/libcrypto/man/man3/BN_CTX_start.3 head/secure/lib/libcrypto/man/man3/BN_add.3 head/secure/lib/libcrypto/man/man3/BN_add_word.3 head/secure/lib/libcrypto/man/man3/BN_bn2bin.3 head/secure/lib/libcrypto/man/man3/BN_cmp.3 head/secure/lib/libcrypto/man/man3/BN_copy.3 head/secure/lib/libcrypto/man/man3/BN_generate_prime.3 head/secure/lib/libcrypto/man/man3/BN_mod_inverse.3 head/secure/lib/libcrypto/man/man3/BN_mod_mul_montgomery.3 head/secure/lib/libcrypto/man/man3/BN_mod_mul_reciprocal.3 head/secure/lib/libcrypto/man/man3/BN_new.3 head/secure/lib/libcrypto/man/man3/BN_num_bytes.3 head/secure/lib/libcrypto/man/man3/BN_rand.3 head/secure/lib/libcrypto/man/man3/BN_security_bits.3 head/secure/lib/libcrypto/man/man3/BN_set_bit.3 head/secure/lib/libcrypto/man/man3/BN_swap.3 head/secure/lib/libcrypto/man/man3/BN_zero.3 head/secure/lib/libcrypto/man/man3/BUF_MEM_new.3 head/secure/lib/libcrypto/man/man3/CMS_add0_cert.3 head/secure/lib/libcrypto/man/man3/CMS_add1_recipient_cert.3 head/secure/lib/libcrypto/man/man3/CMS_add1_signer.3 head/secure/lib/libcrypto/man/man3/CMS_compress.3 head/secure/lib/libcrypto/man/man3/CMS_decrypt.3 head/secure/lib/libcrypto/man/man3/CMS_encrypt.3 head/secure/lib/libcrypto/man/man3/CMS_final.3 head/secure/lib/libcrypto/man/man3/CMS_get0_RecipientInfos.3 head/secure/lib/libcrypto/man/man3/CMS_get0_SignerInfos.3 head/secure/lib/libcrypto/man/man3/CMS_get0_type.3 head/secure/lib/libcrypto/man/man3/CMS_get1_ReceiptRequest.3 head/secure/lib/libcrypto/man/man3/CMS_sign.3 head/secure/lib/libcrypto/man/man3/CMS_sign_receipt.3 head/secure/lib/libcrypto/man/man3/CMS_uncompress.3 head/secure/lib/libcrypto/man/man3/CMS_verify.3 head/secure/lib/libcrypto/man/man3/CMS_verify_receipt.3 head/secure/lib/libcrypto/man/man3/CONF_modules_free.3 head/secure/lib/libcrypto/man/man3/CONF_modules_load_file.3 head/secure/lib/libcrypto/man/man3/CRYPTO_THREAD_run_once.3 head/secure/lib/libcrypto/man/man3/CRYPTO_get_ex_new_index.3 head/secure/lib/libcrypto/man/man3/CRYPTO_memcmp.3 head/secure/lib/libcrypto/man/man3/CTLOG_STORE_get0_log_by_id.3 head/secure/lib/libcrypto/man/man3/CTLOG_STORE_new.3 head/secure/lib/libcrypto/man/man3/CTLOG_new.3 head/secure/lib/libcrypto/man/man3/CT_POLICY_EVAL_CTX_new.3 head/secure/lib/libcrypto/man/man3/DEFINE_STACK_OF.3 head/secure/lib/libcrypto/man/man3/DES_random_key.3 head/secure/lib/libcrypto/man/man3/DH_generate_key.3 head/secure/lib/libcrypto/man/man3/DH_generate_parameters.3 head/secure/lib/libcrypto/man/man3/DH_get0_pqg.3 head/secure/lib/libcrypto/man/man3/DH_get_1024_160.3 head/secure/lib/libcrypto/man/man3/DH_meth_new.3 head/secure/lib/libcrypto/man/man3/DH_new.3 head/secure/lib/libcrypto/man/man3/DH_new_by_nid.3 head/secure/lib/libcrypto/man/man3/DH_set_method.3 head/secure/lib/libcrypto/man/man3/DH_size.3 head/secure/lib/libcrypto/man/man3/DSA_SIG_new.3 head/secure/lib/libcrypto/man/man3/DSA_do_sign.3 head/secure/lib/libcrypto/man/man3/DSA_dup_DH.3 head/secure/lib/libcrypto/man/man3/DSA_generate_key.3 head/secure/lib/libcrypto/man/man3/DSA_generate_parameters.3 head/secure/lib/libcrypto/man/man3/DSA_get0_pqg.3 head/secure/lib/libcrypto/man/man3/DSA_meth_new.3 head/secure/lib/libcrypto/man/man3/DSA_new.3 head/secure/lib/libcrypto/man/man3/DSA_set_method.3 head/secure/lib/libcrypto/man/man3/DSA_sign.3 head/secure/lib/libcrypto/man/man3/DSA_size.3 head/secure/lib/libcrypto/man/man3/DTLS_get_data_mtu.3 head/secure/lib/libcrypto/man/man3/DTLS_set_timer_cb.3 head/secure/lib/libcrypto/man/man3/DTLSv1_listen.3 head/secure/lib/libcrypto/man/man3/ECDSA_SIG_new.3 head/secure/lib/libcrypto/man/man3/ECPKParameters_print.3 head/secure/lib/libcrypto/man/man3/EC_GFp_simple_method.3 head/secure/lib/libcrypto/man/man3/EC_GROUP_copy.3 head/secure/lib/libcrypto/man/man3/EC_GROUP_new.3 head/secure/lib/libcrypto/man/man3/EC_KEY_get_enc_flags.3 head/secure/lib/libcrypto/man/man3/EC_KEY_new.3 head/secure/lib/libcrypto/man/man3/EC_POINT_add.3 head/secure/lib/libcrypto/man/man3/EC_POINT_new.3 head/secure/lib/libcrypto/man/man3/ENGINE_add.3 head/secure/lib/libcrypto/man/man3/ERR_GET_LIB.3 head/secure/lib/libcrypto/man/man3/ERR_clear_error.3 head/secure/lib/libcrypto/man/man3/ERR_error_string.3 head/secure/lib/libcrypto/man/man3/ERR_get_error.3 head/secure/lib/libcrypto/man/man3/ERR_load_crypto_strings.3 head/secure/lib/libcrypto/man/man3/ERR_load_strings.3 head/secure/lib/libcrypto/man/man3/ERR_print_errors.3 head/secure/lib/libcrypto/man/man3/ERR_put_error.3 head/secure/lib/libcrypto/man/man3/ERR_remove_state.3 head/secure/lib/libcrypto/man/man3/ERR_set_mark.3 head/secure/lib/libcrypto/man/man3/EVP_BytesToKey.3 head/secure/lib/libcrypto/man/man3/EVP_CIPHER_CTX_get_cipher_data.3 head/secure/lib/libcrypto/man/man3/EVP_CIPHER_meth_new.3 head/secure/lib/libcrypto/man/man3/EVP_DigestInit.3 head/secure/lib/libcrypto/man/man3/EVP_DigestSignInit.3 head/secure/lib/libcrypto/man/man3/EVP_DigestVerifyInit.3 head/secure/lib/libcrypto/man/man3/EVP_EncodeInit.3 head/secure/lib/libcrypto/man/man3/EVP_EncryptInit.3 head/secure/lib/libcrypto/man/man3/EVP_MD_meth_new.3 head/secure/lib/libcrypto/man/man3/EVP_OpenInit.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_ASN1_METHOD.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_ctrl.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_new.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set1_pbe_pass.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set_hkdf_md.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set_scrypt_N.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set_tls1_prf_md.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_asn1_get_count.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_cmp.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_decrypt.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_derive.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_encrypt.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_get_default_digest_nid.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_keygen.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_meth_get_count.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_meth_new.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_new.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_print_private.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_set1_RSA.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_sign.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_verify.3 head/secure/lib/libcrypto/man/man3/EVP_PKEY_verify_recover.3 head/secure/lib/libcrypto/man/man3/EVP_SealInit.3 head/secure/lib/libcrypto/man/man3/EVP_SignInit.3 head/secure/lib/libcrypto/man/man3/EVP_VerifyInit.3 head/secure/lib/libcrypto/man/man3/EVP_aes.3 head/secure/lib/libcrypto/man/man3/EVP_aria.3 head/secure/lib/libcrypto/man/man3/EVP_bf_cbc.3 head/secure/lib/libcrypto/man/man3/EVP_blake2b512.3 head/secure/lib/libcrypto/man/man3/EVP_camellia.3 head/secure/lib/libcrypto/man/man3/EVP_cast5_cbc.3 head/secure/lib/libcrypto/man/man3/EVP_chacha20.3 head/secure/lib/libcrypto/man/man3/EVP_des.3 head/secure/lib/libcrypto/man/man3/EVP_desx_cbc.3 head/secure/lib/libcrypto/man/man3/EVP_idea_cbc.3 head/secure/lib/libcrypto/man/man3/EVP_md2.3 head/secure/lib/libcrypto/man/man3/EVP_md4.3 head/secure/lib/libcrypto/man/man3/EVP_md5.3 head/secure/lib/libcrypto/man/man3/EVP_mdc2.3 head/secure/lib/libcrypto/man/man3/EVP_rc2_cbc.3 head/secure/lib/libcrypto/man/man3/EVP_rc4.3 head/secure/lib/libcrypto/man/man3/EVP_rc5_32_12_16_cbc.3 head/secure/lib/libcrypto/man/man3/EVP_ripemd160.3 head/secure/lib/libcrypto/man/man3/EVP_seed_cbc.3 head/secure/lib/libcrypto/man/man3/EVP_sha1.3 head/secure/lib/libcrypto/man/man3/EVP_sha224.3 head/secure/lib/libcrypto/man/man3/EVP_sha3_224.3 head/secure/lib/libcrypto/man/man3/EVP_sm3.3 head/secure/lib/libcrypto/man/man3/EVP_sm4_cbc.3 head/secure/lib/libcrypto/man/man3/EVP_whirlpool.3 head/secure/lib/libcrypto/man/man3/HMAC.3 head/secure/lib/libcrypto/man/man3/MD5.3 head/secure/lib/libcrypto/man/man3/MDC2_Init.3 head/secure/lib/libcrypto/man/man3/Makefile head/secure/lib/libcrypto/man/man3/OBJ_nid2obj.3 head/secure/lib/libcrypto/man/man3/OCSP_REQUEST_new.3 head/secure/lib/libcrypto/man/man3/OCSP_cert_to_id.3 head/secure/lib/libcrypto/man/man3/OCSP_request_add1_nonce.3 head/secure/lib/libcrypto/man/man3/OCSP_resp_find_status.3 head/secure/lib/libcrypto/man/man3/OCSP_response_status.3 head/secure/lib/libcrypto/man/man3/OCSP_sendreq_new.3 head/secure/lib/libcrypto/man/man3/OPENSSL_Applink.3 head/secure/lib/libcrypto/man/man3/OPENSSL_LH_COMPFUNC.3 head/secure/lib/libcrypto/man/man3/OPENSSL_LH_stats.3 head/secure/lib/libcrypto/man/man3/OPENSSL_VERSION_NUMBER.3 head/secure/lib/libcrypto/man/man3/OPENSSL_config.3 head/secure/lib/libcrypto/man/man3/OPENSSL_fork_prepare.3 head/secure/lib/libcrypto/man/man3/OPENSSL_ia32cap.3 head/secure/lib/libcrypto/man/man3/OPENSSL_init_crypto.3 head/secure/lib/libcrypto/man/man3/OPENSSL_init_ssl.3 head/secure/lib/libcrypto/man/man3/OPENSSL_instrument_bus.3 head/secure/lib/libcrypto/man/man3/OPENSSL_load_builtin_modules.3 head/secure/lib/libcrypto/man/man3/OPENSSL_malloc.3 head/secure/lib/libcrypto/man/man3/OPENSSL_secure_malloc.3 head/secure/lib/libcrypto/man/man3/OSSL_STORE_INFO.3 head/secure/lib/libcrypto/man/man3/OSSL_STORE_LOADER.3 head/secure/lib/libcrypto/man/man3/OSSL_STORE_SEARCH.3 head/secure/lib/libcrypto/man/man3/OSSL_STORE_expect.3 head/secure/lib/libcrypto/man/man3/OSSL_STORE_open.3 head/secure/lib/libcrypto/man/man3/OpenSSL_add_all_algorithms.3 head/secure/lib/libcrypto/man/man3/PEM_bytes_read_bio.3 head/secure/lib/libcrypto/man/man3/PEM_read.3 head/secure/lib/libcrypto/man/man3/PEM_read_CMS.3 head/secure/lib/libcrypto/man/man3/PEM_read_bio_PrivateKey.3 head/secure/lib/libcrypto/man/man3/PEM_read_bio_ex.3 head/secure/lib/libcrypto/man/man3/PEM_write_bio_CMS_stream.3 head/secure/lib/libcrypto/man/man3/PEM_write_bio_PKCS7_stream.3 head/secure/lib/libcrypto/man/man3/PKCS12_create.3 head/secure/lib/libcrypto/man/man3/PKCS12_newpass.3 head/secure/lib/libcrypto/man/man3/PKCS12_parse.3 head/secure/lib/libcrypto/man/man3/PKCS5_PBKDF2_HMAC.3 head/secure/lib/libcrypto/man/man3/PKCS7_decrypt.3 head/secure/lib/libcrypto/man/man3/PKCS7_encrypt.3 head/secure/lib/libcrypto/man/man3/PKCS7_sign.3 head/secure/lib/libcrypto/man/man3/PKCS7_sign_add_signer.3 head/secure/lib/libcrypto/man/man3/PKCS7_verify.3 head/secure/lib/libcrypto/man/man3/RAND_DRBG_generate.3 head/secure/lib/libcrypto/man/man3/RAND_DRBG_get0_master.3 head/secure/lib/libcrypto/man/man3/RAND_DRBG_new.3 head/secure/lib/libcrypto/man/man3/RAND_DRBG_reseed.3 head/secure/lib/libcrypto/man/man3/RAND_DRBG_set_callbacks.3 head/secure/lib/libcrypto/man/man3/RAND_DRBG_set_ex_data.3 head/secure/lib/libcrypto/man/man3/RAND_add.3 head/secure/lib/libcrypto/man/man3/RAND_bytes.3 head/secure/lib/libcrypto/man/man3/RAND_cleanup.3 head/secure/lib/libcrypto/man/man3/RAND_egd.3 head/secure/lib/libcrypto/man/man3/RAND_load_file.3 head/secure/lib/libcrypto/man/man3/RAND_set_rand_method.3 head/secure/lib/libcrypto/man/man3/RC4_set_key.3 head/secure/lib/libcrypto/man/man3/RIPEMD160_Init.3 head/secure/lib/libcrypto/man/man3/RSA_blinding_on.3 head/secure/lib/libcrypto/man/man3/RSA_check_key.3 head/secure/lib/libcrypto/man/man3/RSA_generate_key.3 head/secure/lib/libcrypto/man/man3/RSA_get0_key.3 head/secure/lib/libcrypto/man/man3/RSA_meth_new.3 head/secure/lib/libcrypto/man/man3/RSA_new.3 head/secure/lib/libcrypto/man/man3/RSA_padding_add_PKCS1_type_1.3 head/secure/lib/libcrypto/man/man3/RSA_print.3 head/secure/lib/libcrypto/man/man3/RSA_private_encrypt.3 head/secure/lib/libcrypto/man/man3/RSA_public_encrypt.3 head/secure/lib/libcrypto/man/man3/RSA_set_method.3 head/secure/lib/libcrypto/man/man3/RSA_sign.3 head/secure/lib/libcrypto/man/man3/RSA_sign_ASN1_OCTET_STRING.3 head/secure/lib/libcrypto/man/man3/RSA_size.3 head/secure/lib/libcrypto/man/man3/SCT_new.3 head/secure/lib/libcrypto/man/man3/SCT_print.3 head/secure/lib/libcrypto/man/man3/SCT_validate.3 head/secure/lib/libcrypto/man/man3/SHA256_Init.3 head/secure/lib/libcrypto/man/man3/SMIME_read_CMS.3 head/secure/lib/libcrypto/man/man3/SMIME_read_PKCS7.3 head/secure/lib/libcrypto/man/man3/SMIME_write_CMS.3 head/secure/lib/libcrypto/man/man3/SMIME_write_PKCS7.3 head/secure/lib/libcrypto/man/man3/SSL_CIPHER_get_name.3 head/secure/lib/libcrypto/man/man3/SSL_COMP_add_compression_method.3 head/secure/lib/libcrypto/man/man3/SSL_CONF_CTX_new.3 head/secure/lib/libcrypto/man/man3/SSL_CONF_CTX_set1_prefix.3 head/secure/lib/libcrypto/man/man3/SSL_CONF_CTX_set_flags.3 head/secure/lib/libcrypto/man/man3/SSL_CONF_CTX_set_ssl_ctx.3 head/secure/lib/libcrypto/man/man3/SSL_CONF_cmd.3 head/secure/lib/libcrypto/man/man3/SSL_CONF_cmd_argv.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_add1_chain_cert.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_add_extra_chain_cert.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_add_session.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_config.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_ctrl.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_dane_enable.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_flush_sessions.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_free.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_get0_param.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_get_verify_mode.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_has_client_custom_ext.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_load_verify_locations.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_new.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_sess_number.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_sess_set_cache_size.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_sess_set_get_cb.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_sessions.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set0_CA_list.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set1_curves.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set1_sigalgs.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set1_verify_cert_store.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_alpn_select_cb.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_cert_cb.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_cert_store.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_cert_verify_callback.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_cipher_list.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_client_cert_cb.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_client_hello_cb.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_ct_validation_callback.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_ctlog_list_file.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_default_passwd_cb.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_ex_data.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_generate_session_id.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_info_callback.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_keylog_callback.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_max_cert_list.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_min_proto_version.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_mode.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_msg_callback.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_num_tickets.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_options.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_psk_client_callback.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_quiet_shutdown.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_read_ahead.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_record_padding_callback.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_security_level.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_session_cache_mode.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_session_id_context.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_session_ticket_cb.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_split_send_fragment.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_ssl_version.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_stateless_cookie_generate_cb.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_timeout.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_tlsext_servername_callback.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_tlsext_status_cb.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_tlsext_ticket_key_cb.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_tlsext_use_srtp.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_tmp_dh_callback.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_set_verify.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_use_certificate.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_use_psk_identity_hint.3 head/secure/lib/libcrypto/man/man3/SSL_CTX_use_serverinfo.3 head/secure/lib/libcrypto/man/man3/SSL_SESSION_free.3 head/secure/lib/libcrypto/man/man3/SSL_SESSION_get0_cipher.3 head/secure/lib/libcrypto/man/man3/SSL_SESSION_get0_hostname.3 head/secure/lib/libcrypto/man/man3/SSL_SESSION_get0_id_context.3 head/secure/lib/libcrypto/man/man3/SSL_SESSION_get0_peer.3 head/secure/lib/libcrypto/man/man3/SSL_SESSION_get_compress_id.3 head/secure/lib/libcrypto/man/man3/SSL_SESSION_get_ex_data.3 head/secure/lib/libcrypto/man/man3/SSL_SESSION_get_protocol_version.3 head/secure/lib/libcrypto/man/man3/SSL_SESSION_get_time.3 head/secure/lib/libcrypto/man/man3/SSL_SESSION_has_ticket.3 head/secure/lib/libcrypto/man/man3/SSL_SESSION_is_resumable.3 head/secure/lib/libcrypto/man/man3/SSL_SESSION_print.3 head/secure/lib/libcrypto/man/man3/SSL_SESSION_set1_id.3 head/secure/lib/libcrypto/man/man3/SSL_accept.3 head/secure/lib/libcrypto/man/man3/SSL_alert_type_string.3 head/secure/lib/libcrypto/man/man3/SSL_alloc_buffers.3 head/secure/lib/libcrypto/man/man3/SSL_check_chain.3 head/secure/lib/libcrypto/man/man3/SSL_clear.3 head/secure/lib/libcrypto/man/man3/SSL_connect.3 head/secure/lib/libcrypto/man/man3/SSL_do_handshake.3 head/secure/lib/libcrypto/man/man3/SSL_export_keying_material.3 head/secure/lib/libcrypto/man/man3/SSL_extension_supported.3 head/secure/lib/libcrypto/man/man3/SSL_free.3 head/secure/lib/libcrypto/man/man3/SSL_get0_peer_scts.3 head/secure/lib/libcrypto/man/man3/SSL_get_SSL_CTX.3 head/secure/lib/libcrypto/man/man3/SSL_get_all_async_fds.3 head/secure/lib/libcrypto/man/man3/SSL_get_ciphers.3 head/secure/lib/libcrypto/man/man3/SSL_get_client_random.3 head/secure/lib/libcrypto/man/man3/SSL_get_current_cipher.3 head/secure/lib/libcrypto/man/man3/SSL_get_default_timeout.3 head/secure/lib/libcrypto/man/man3/SSL_get_error.3 head/secure/lib/libcrypto/man/man3/SSL_get_extms_support.3 head/secure/lib/libcrypto/man/man3/SSL_get_fd.3 head/secure/lib/libcrypto/man/man3/SSL_get_peer_cert_chain.3 head/secure/lib/libcrypto/man/man3/SSL_get_peer_certificate.3 head/secure/lib/libcrypto/man/man3/SSL_get_peer_signature_nid.3 head/secure/lib/libcrypto/man/man3/SSL_get_peer_tmp_key.3 head/secure/lib/libcrypto/man/man3/SSL_get_psk_identity.3 head/secure/lib/libcrypto/man/man3/SSL_get_rbio.3 head/secure/lib/libcrypto/man/man3/SSL_get_session.3 head/secure/lib/libcrypto/man/man3/SSL_get_shared_sigalgs.3 head/secure/lib/libcrypto/man/man3/SSL_get_verify_result.3 head/secure/lib/libcrypto/man/man3/SSL_get_version.3 head/secure/lib/libcrypto/man/man3/SSL_in_init.3 head/secure/lib/libcrypto/man/man3/SSL_key_update.3 head/secure/lib/libcrypto/man/man3/SSL_library_init.3 head/secure/lib/libcrypto/man/man3/SSL_load_client_CA_file.3 head/secure/lib/libcrypto/man/man3/SSL_new.3 head/secure/lib/libcrypto/man/man3/SSL_pending.3 head/secure/lib/libcrypto/man/man3/SSL_read.3 head/secure/lib/libcrypto/man/man3/SSL_read_early_data.3 head/secure/lib/libcrypto/man/man3/SSL_rstate_string.3 head/secure/lib/libcrypto/man/man3/SSL_session_reused.3 head/secure/lib/libcrypto/man/man3/SSL_set1_host.3 head/secure/lib/libcrypto/man/man3/SSL_set_bio.3 head/secure/lib/libcrypto/man/man3/SSL_set_connect_state.3 head/secure/lib/libcrypto/man/man3/SSL_set_fd.3 head/secure/lib/libcrypto/man/man3/SSL_set_session.3 head/secure/lib/libcrypto/man/man3/SSL_set_shutdown.3 head/secure/lib/libcrypto/man/man3/SSL_set_verify_result.3 head/secure/lib/libcrypto/man/man3/SSL_shutdown.3 head/secure/lib/libcrypto/man/man3/SSL_state_string.3 head/secure/lib/libcrypto/man/man3/SSL_want.3 head/secure/lib/libcrypto/man/man3/SSL_write.3 head/secure/lib/libcrypto/man/man3/UI_STRING.3 head/secure/lib/libcrypto/man/man3/UI_UTIL_read_pw.3 head/secure/lib/libcrypto/man/man3/UI_create_method.3 head/secure/lib/libcrypto/man/man3/UI_new.3 head/secure/lib/libcrypto/man/man3/X509V3_get_d2i.3 head/secure/lib/libcrypto/man/man3/X509_ALGOR_dup.3 head/secure/lib/libcrypto/man/man3/X509_CRL_get0_by_serial.3 head/secure/lib/libcrypto/man/man3/X509_EXTENSION_set_object.3 head/secure/lib/libcrypto/man/man3/X509_LOOKUP_hash_dir.3 head/secure/lib/libcrypto/man/man3/X509_LOOKUP_meth_new.3 head/secure/lib/libcrypto/man/man3/X509_NAME_ENTRY_get_object.3 head/secure/lib/libcrypto/man/man3/X509_NAME_add_entry_by_txt.3 head/secure/lib/libcrypto/man/man3/X509_NAME_get0_der.3 head/secure/lib/libcrypto/man/man3/X509_NAME_get_index_by_NID.3 head/secure/lib/libcrypto/man/man3/X509_NAME_print_ex.3 head/secure/lib/libcrypto/man/man3/X509_PUBKEY_new.3 head/secure/lib/libcrypto/man/man3/X509_SIG_get0.3 head/secure/lib/libcrypto/man/man3/X509_STORE_CTX_get_error.3 head/secure/lib/libcrypto/man/man3/X509_STORE_CTX_new.3 head/secure/lib/libcrypto/man/man3/X509_STORE_CTX_set_verify_cb.3 head/secure/lib/libcrypto/man/man3/X509_STORE_add_cert.3 head/secure/lib/libcrypto/man/man3/X509_STORE_get0_param.3 head/secure/lib/libcrypto/man/man3/X509_STORE_new.3 head/secure/lib/libcrypto/man/man3/X509_STORE_set_verify_cb_func.3 head/secure/lib/libcrypto/man/man3/X509_VERIFY_PARAM_set_flags.3 head/secure/lib/libcrypto/man/man3/X509_check_ca.3 head/secure/lib/libcrypto/man/man3/X509_check_host.3 head/secure/lib/libcrypto/man/man3/X509_check_issued.3 head/secure/lib/libcrypto/man/man3/X509_check_private_key.3 head/secure/lib/libcrypto/man/man3/X509_cmp.3 head/secure/lib/libcrypto/man/man3/X509_cmp_time.3 head/secure/lib/libcrypto/man/man3/X509_digest.3 head/secure/lib/libcrypto/man/man3/X509_dup.3 head/secure/lib/libcrypto/man/man3/X509_get0_notBefore.3 head/secure/lib/libcrypto/man/man3/X509_get0_signature.3 head/secure/lib/libcrypto/man/man3/X509_get0_uids.3 head/secure/lib/libcrypto/man/man3/X509_get_extension_flags.3 head/secure/lib/libcrypto/man/man3/X509_get_pubkey.3 head/secure/lib/libcrypto/man/man3/X509_get_serialNumber.3 head/secure/lib/libcrypto/man/man3/X509_get_subject_name.3 head/secure/lib/libcrypto/man/man3/X509_get_version.3 head/secure/lib/libcrypto/man/man3/X509_new.3 head/secure/lib/libcrypto/man/man3/X509_sign.3 head/secure/lib/libcrypto/man/man3/X509_verify_cert.3 head/secure/lib/libcrypto/man/man3/X509v3_get_ext_by_NID.3 head/secure/lib/libcrypto/man/man3/d2i_DHparams.3 head/secure/lib/libcrypto/man/man3/d2i_PKCS8PrivateKey_bio.3 head/secure/lib/libcrypto/man/man3/d2i_PrivateKey.3 head/secure/lib/libcrypto/man/man3/d2i_SSL_SESSION.3 head/secure/lib/libcrypto/man/man3/d2i_X509.3 head/secure/lib/libcrypto/man/man3/i2d_CMS_bio_stream.3 head/secure/lib/libcrypto/man/man3/i2d_PKCS7_bio_stream.3 head/secure/lib/libcrypto/man/man3/i2d_re_X509_tbs.3 head/secure/lib/libcrypto/man/man3/o2i_SCT_LIST.3 head/secure/lib/libcrypto/man/man5/x509v3_config.5 head/secure/lib/libcrypto/man/man7/Ed25519.7 head/secure/lib/libcrypto/man/man7/Makefile head/secure/lib/libcrypto/man/man7/RAND.7 head/secure/lib/libcrypto/man/man7/RAND_DRBG.7 head/secure/lib/libcrypto/man/man7/RSA-PSS.7 head/secure/lib/libcrypto/man/man7/SM2.7 head/secure/lib/libcrypto/man/man7/X25519.7 head/secure/lib/libcrypto/man/man7/bio.7 head/secure/lib/libcrypto/man/man7/ct.7 head/secure/lib/libcrypto/man/man7/des_modes.7 head/secure/lib/libcrypto/man/man7/evp.7 head/secure/lib/libcrypto/man/man7/ossl_store-file.7 head/secure/lib/libcrypto/man/man7/ossl_store.7 head/secure/lib/libcrypto/man/man7/passphrase-encoding.7 head/secure/lib/libcrypto/man/man7/scrypt.7 head/secure/lib/libcrypto/man/man7/ssl.7 head/secure/lib/libcrypto/man/man7/x509.7 head/secure/usr.bin/openssl/man/CA.pl.1 head/secure/usr.bin/openssl/man/asn1parse.1 head/secure/usr.bin/openssl/man/ca.1 head/secure/usr.bin/openssl/man/ciphers.1 head/secure/usr.bin/openssl/man/cms.1 head/secure/usr.bin/openssl/man/crl.1 head/secure/usr.bin/openssl/man/crl2pkcs7.1 head/secure/usr.bin/openssl/man/dgst.1 head/secure/usr.bin/openssl/man/dhparam.1 head/secure/usr.bin/openssl/man/dsa.1 head/secure/usr.bin/openssl/man/dsaparam.1 head/secure/usr.bin/openssl/man/ec.1 head/secure/usr.bin/openssl/man/ecparam.1 head/secure/usr.bin/openssl/man/enc.1 head/secure/usr.bin/openssl/man/engine.1 head/secure/usr.bin/openssl/man/errstr.1 head/secure/usr.bin/openssl/man/gendsa.1 head/secure/usr.bin/openssl/man/genpkey.1 head/secure/usr.bin/openssl/man/genrsa.1 head/secure/usr.bin/openssl/man/list.1 head/secure/usr.bin/openssl/man/nseq.1 head/secure/usr.bin/openssl/man/ocsp.1 head/secure/usr.bin/openssl/man/openssl.1 head/secure/usr.bin/openssl/man/passwd.1 head/secure/usr.bin/openssl/man/pkcs12.1 head/secure/usr.bin/openssl/man/pkcs7.1 head/secure/usr.bin/openssl/man/pkcs8.1 head/secure/usr.bin/openssl/man/pkey.1 head/secure/usr.bin/openssl/man/pkeyparam.1 head/secure/usr.bin/openssl/man/pkeyutl.1 head/secure/usr.bin/openssl/man/prime.1 head/secure/usr.bin/openssl/man/rand.1 head/secure/usr.bin/openssl/man/req.1 head/secure/usr.bin/openssl/man/rsa.1 head/secure/usr.bin/openssl/man/rsautl.1 head/secure/usr.bin/openssl/man/s_client.1 head/secure/usr.bin/openssl/man/s_server.1 head/secure/usr.bin/openssl/man/s_time.1 head/secure/usr.bin/openssl/man/sess_id.1 head/secure/usr.bin/openssl/man/smime.1 head/secure/usr.bin/openssl/man/speed.1 head/secure/usr.bin/openssl/man/spkac.1 head/secure/usr.bin/openssl/man/srp.1 head/secure/usr.bin/openssl/man/storeutl.1 head/secure/usr.bin/openssl/man/ts.1 head/secure/usr.bin/openssl/man/tsget.1 head/secure/usr.bin/openssl/man/verify.1 head/secure/usr.bin/openssl/man/version.1 head/secure/usr.bin/openssl/man/x509.1 Directory Properties: head/crypto/openssl/ (props changed) Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Wed Mar 18 01:55:27 2020 (r359059) +++ head/ObsoleteFiles.inc Wed Mar 18 02:13:12 2020 (r359060) @@ -36,6 +36,12 @@ # xargs -n1 | sort | uniq -d; # done +# 20200317: OpenSSL 1.1.1e import +OLD_FILES+=usr/share/openssl/man/man3/EVP_PKEY_security_bits.3.gz +OLD_FILES+=usr/share/openssl/man/man3/EVP_PKEY_size.3.gz +OLD_FILES+=usr/share/openssl/man/man3/X509_LOOKUP_get_method_data.3.gz +OLD_FILES+=usr/share/openssl/man/man3/X509_LOOKUP_get_store.3.gz +OLD_FILES+=usr/share/openssl/man/man3/X509_LOOKUP_set_method_data.3.gz # 20200310: new clang import which bumps version from 9.0.1 to 10.0.0. OLD_FILES+=usr/lib/clang/9.0.1/include/cuda_wrappers/algorithm OLD_FILES+=usr/lib/clang/9.0.1/include/cuda_wrappers/complex Modified: head/crypto/openssl/CHANGES ============================================================================== --- head/crypto/openssl/CHANGES Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/CHANGES Wed Mar 18 02:13:12 2020 (r359060) @@ -7,6 +7,73 @@ https://github.com/openssl/openssl/commits/ and pick the appropriate release branch. + Changes between 1.1.1d and 1.1.1e [17 Mar 2020] + *) Properly detect EOF while reading in libssl. Previously if we hit an EOF + while reading in libssl then we would report an error back to the + application (SSL_ERROR_SYSCALL) but errno would be 0. We now add + an error to the stack (which means we instead return SSL_ERROR_SSL) and + therefore give a hint as to what went wrong. + [Matt Caswell] + + *) Check that ed25519 and ed448 are allowed by the security level. Previously + signature algorithms not using an MD were not being checked that they were + allowed by the security level. + [Kurt Roeckx] + + *) Fixed SSL_get_servername() behaviour. The behaviour of SSL_get_servername() + was not quite right. The behaviour was not consistent between resumption + and normal handshakes, and also not quite consistent with historical + behaviour. The behaviour in various scenarios has been clarified and + it has been updated to make it match historical behaviour as closely as + possible. + [Matt Caswell] + + *) [VMS only] The header files that the VMS compilers include automatically, + __DECC_INCLUDE_PROLOGUE.H and __DECC_INCLUDE_EPILOGUE.H, use pragmas that + the C++ compiler doesn't understand. This is a shortcoming in the + compiler, but can be worked around with __cplusplus guards. + + C++ applications that use OpenSSL libraries must be compiled using the + qualifier '/NAMES=(AS_IS,SHORTENED)' to be able to use all the OpenSSL + functions. Otherwise, only functions with symbols of less than 31 + characters can be used, as the linker will not be able to successfully + resolve symbols with longer names. + [Richard Levitte] + + *) Corrected the documentation of the return values from the EVP_DigestSign* + set of functions. The documentation mentioned negative values for some + errors, but this was never the case, so the mention of negative values + was removed. + + Code that followed the documentation and thereby check with something + like 'EVP_DigestSignInit(...) <= 0' will continue to work undisturbed. + [Richard Levitte] + + *) Fixed an an overflow bug in the x64_64 Montgomery squaring procedure + used in exponentiation with 512-bit moduli. No EC algorithms are + affected. Analysis suggests that attacks against 2-prime RSA1024, + 3-prime RSA1536, and DSA1024 as a result of this defect would be very + difficult to perform and are not believed likely. Attacks against DH512 + are considered just feasible. However, for an attack the target would + have to re-use the DH512 private key, which is not recommended anyway. + Also applications directly using the low level API BN_mod_exp may be + affected if they use BN_FLG_CONSTTIME. + (CVE-2019-1551) + [Andy Polyakov] + + *) Added a new method to gather entropy on VMS, based on SYS$GET_ENTROPY. + The presence of this system service is determined at run-time. + [Richard Levitte] + + *) Added newline escaping functionality to a filename when using openssl dgst. + This output format is to replicate the output format found in the '*sum' + checksum programs. This aims to preserve backward compatibility. + [Matt Eaton, Richard Levitte, and Paul Dale] + + *) Print all values for a PKCS#12 attribute with 'openssl pkcs12', not just + the first value. + [Jon Spillett] + Changes between 1.1.1c and 1.1.1d [10 Sep 2019] *) Fixed a fork protection issue. OpenSSL 1.1.1 introduced a rewritten random @@ -633,9 +700,9 @@ bytes long. In theory it is permissible in SSLv3 - TLSv1.2 to fragment such alerts across multiple records (some of which could be empty). In practice it make no sense to send an empty alert record, or to fragment one. TLSv1.3 - prohibts this altogether and other libraries (BoringSSL, NSS) do not + prohibits this altogether and other libraries (BoringSSL, NSS) do not support this at all. Supporting it adds significant complexity to the - record layer, and its removal is unlikely to cause inter-operability + record layer, and its removal is unlikely to cause interoperability issues. [Matt Caswell] @@ -3652,7 +3719,7 @@ implementations). [Emilia Käsper, Adam Langley, Bodo Moeller (Google)] - *) Use type ossl_ssize_t instad of ssize_t which isn't available on + *) Use type ossl_ssize_t instead of ssize_t which isn't available on all platforms. Move ssize_t definition from e_os.h to the public header file e_os2.h as it now appears in public header file cms.h [Steve Henson] @@ -8373,7 +8440,7 @@ des-cbc 3624.96k 5258.21k 5530.91k *) New OCSP utility. Allows OCSP requests to be generated or read. The request can be sent to a responder and the output - parsed, outputed or printed in text form. Not complete yet: + parsed, outputted or printed in text form. Not complete yet: still needs to check the OCSP response validity. [Steve Henson] @@ -9368,7 +9435,7 @@ des-cbc 3624.96k 5258.21k 5530.91k [Andy Polyakov] *) Modified SSL library such that the verify_callback that has been set - specificly for an SSL object with SSL_set_verify() is actually being + specifically for an SSL object with SSL_set_verify() is actually being used. Before the change, a verify_callback set with this function was ignored and the verify_callback() set in the SSL_CTX at the time of the call was used. New function X509_STORE_CTX_set_verify_cb() introduced @@ -10485,10 +10552,10 @@ des-cbc 3624.96k 5258.21k 5530.91k as other interfaces in OpenSSL, like the BIO interface. NCONF_dump_* dump the internal storage of the configuration file, which is useful for debugging. All other functions take the same - arguments as the old CONF_* functions wth the exception of the + arguments as the old CONF_* functions with the exception of the first that must be a `CONF *' instead of a `LHASH *'. - To make it easer to use the new classes with the old CONF_* functions, + To make it easier to use the new classes with the old CONF_* functions, the function CONF_set_default_method is provided. [Richard Levitte] @@ -12331,7 +12398,7 @@ des-cbc 3624.96k 5258.21k 5530.91k than the old method: it now uses a modified version of Ulf's parser to read the ANSI prototypes in all header files (thus the old K&R definitions aren't needed for error creation any more) and do a better job of - translating function codes into names. The old 'ASN1 error code imbedded + translating function codes into names. The old 'ASN1 error code embedded in a comment' is no longer necessary and it doesn't use .err files which have now been deleted. Also the error code call doesn't have to appear all on one line (which resulted in some large lines...). @@ -12632,7 +12699,7 @@ des-cbc 3624.96k 5258.21k 5530.91k *) Add a useful kludge to allow package maintainers to specify compiler and other platforms details on the command line without having to patch the - Configure script everytime: One now can use ``perl Configure + Configure script every time: One now can use ``perl Configure :
'', i.e. platform ids are allowed to have details appended to them (separated by colons). This is treated as there would be a static pre-configured entry in Configure's %table under key with value Modified: head/crypto/openssl/CONTRIBUTING ============================================================================== --- head/crypto/openssl/CONTRIBUTING Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/CONTRIBUTING Wed Mar 18 02:13:12 2020 (r359060) @@ -58,7 +58,7 @@ guidelines: consider adding a note in CHANGES. This could be a summarising description of the change, and could explain the grander details. Have a look through existing entries for inspiration. - Please note that this is NOT simply a copy of git-log oneliners. + Please note that this is NOT simply a copy of git-log one-liners. Also note that security fixes get an entry in CHANGES. This file helps users get more in depth information of what comes with a specific release without having to sift through the higher Modified: head/crypto/openssl/Configure ============================================================================== --- head/crypto/openssl/Configure Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/Configure Wed Mar 18 02:13:12 2020 (r359060) @@ -1,6 +1,6 @@ #! /usr/bin/env perl # -*- mode: perl; -*- -# Copyright 2016-2019 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2016-2020 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -69,7 +69,15 @@ my $usage="Usage: Configure [no- ...] [enable- # no-sse2 disables IA-32 SSE2 code in assembly modules, the above # mentioned '386' option implies this one # no- build without specified algorithm (rsa, idea, rc5, ...) -# - + compiler options are passed through +# - + All options which are unknown to the 'Configure' script are +# / passed through to the compiler. Unix-style options beginning +# with a '-' or '+' are recognized, as well as Windows-style +# options beginning with a '/'. If the option contains arguments +# separated by spaces, then the URL-style notation %20 can be +# used for the space character in order to avoid having to quote +# the option. For example, -opt%20arg gets expanded to -opt arg. +# In fact, any ASCII character can be encoded as %xx using its +# hexadecimal encoding. # -static while -static is also a pass-through compiler option (and # as such is limited to environments where it's actually # meaningful), it triggers a number configuration options, @@ -152,6 +160,10 @@ my @clang_devteam_warn = qw( -Wmissing-variable-declarations ); +my @cl_devteam_warn = qw( + /WX +); + # This adds backtrace information to the memory leak info. Is only used # when crypto-mdebug-backtrace is enabled. my $memleak_devteam_backtrace = "-rdynamic"; @@ -346,6 +358,7 @@ my @disablables = ( "dgram", "dh", "dsa", + "dso", "dtls", "dynamic-engine", "ec", @@ -423,7 +436,6 @@ my %deprecated_disablables = ( "buf-freelists" => undef, "ripemd" => "rmd160", "ui" => "ui-console", - "dso" => "", # Empty string means we're silent about it ); # All of the following are disabled by default: @@ -480,6 +492,7 @@ my @disable_cascades = ( # Without position independent code, there can be no shared libraries or DSOs "pic" => [ "shared" ], "shared" => [ "dynamic-engine" ], + "dso" => [ "dynamic-engine" ], "engine" => [ "afalgeng", "devcryptoeng" ], # no-autoalginit is only useful when building non-shared @@ -520,7 +533,7 @@ while ((my $first, my $second) = (shift @list, shift @ &usage if ($#ARGV < 0); -# For the "make variables" CINCLUDES and CDEFINES, we support lists with +# For the "make variables" CPPINCLUDES and CPPDEFINES, we support lists with # platform specific list separators. Users from those platforms should # recognise those separators from how you set up the PATH to find executables. # The default is the Unix like separator, :, but as an exception, we also @@ -776,7 +789,7 @@ while (@argvcopy) { die "FIPS mode not supported\n"; } - elsif (/^[-+]/) + elsif (m|^[-+/]|) { if (/^--prefix=(.*)$/) { @@ -853,11 +866,11 @@ while (@argvcopy) { push @{$useradd{LDFLAGS}}, $_; } - elsif (/^-D(.*)$/) + elsif (m|^[-/]D(.*)$|) { push @{$useradd{CPPDEFINES}}, $1; } - elsif (/^-I(.*)$/) + elsif (m|^[-/]I(.*)$|) { push @{$useradd{CPPINCLUDES}}, $1; } @@ -867,11 +880,23 @@ while (@argvcopy) } else # common if (/^[-+]/), just pass down... { + # Treat %xx as an ASCII code (e.g. replace %20 by a space character). + # This provides a simple way to pass options with arguments separated + # by spaces without quoting (e.g. -opt%20arg translates to -opt arg). $_ =~ s/%([0-9a-f]{1,2})/chr(hex($1))/gei; push @{$useradd{CFLAGS}}, $_; push @{$useradd{CXXFLAGS}}, $_; } } + elsif (m|^/|) + { + # Treat %xx as an ASCII code (e.g. replace %20 by a space character). + # This provides a simple way to pass options with arguments separated + # by spaces without quoting (e.g. /opt%20arg translates to /opt arg). + $_ =~ s/%([0-9a-f]{1,2})/chr(hex($1))/gei; + push @{$useradd{CFLAGS}}, $_; + push @{$useradd{CXXFLAGS}}, $_; + } else { die "target already defined - $target (offending arg: $_)\n" if ($target ne ""); @@ -949,7 +974,11 @@ foreach (keys %user) { if (defined $value) { if (ref $user{$_} eq 'ARRAY') { - $user{$_} = [ split /$list_separator_re/, $value ]; + if ($_ eq 'CPPDEFINES' || $_ eq 'CPPINCLUDES') { + $user{$_} = [ split /$list_separator_re/, $value ]; + } else { + $user{$_} = [ $value ]; + } } elsif (!defined $user{$_}) { $user{$_} = $value; } @@ -1162,43 +1191,6 @@ foreach (keys %useradd) { # Allow overriding the build file name $config{build_file} = env('BUILDFILE') || $target{build_file} || "Makefile"; -my %disabled_info = (); # For configdata.pm -foreach my $what (sort keys %disabled) { - $config{options} .= " no-$what"; - - if (!grep { $what eq $_ } ( 'buildtest-c++', 'threads', 'shared', 'pic', - 'dynamic-engine', 'makedepend', - 'zlib-dynamic', 'zlib', 'sse2' )) { - (my $WHAT = uc $what) =~ s|-|_|g; - - # Fix up C macro end names - $WHAT = "RMD160" if $what eq "ripemd"; - - # fix-up crypto/directory name(s) - $what = "ripemd" if $what eq "rmd160"; - $what = "whrlpool" if $what eq "whirlpool"; - - my $macro = $disabled_info{$what}->{macro} = "OPENSSL_NO_$WHAT"; - - if ((grep { $what eq $_ } @{$config{sdirs}}) - && $what ne 'async' && $what ne 'err') { - @{$config{sdirs}} = grep { $what ne $_} @{$config{sdirs}}; - $disabled_info{$what}->{skipped} = [ catdir('crypto', $what) ]; - - if ($what ne 'engine') { - push @{$config{openssl_algorithm_defines}}, $macro; - } else { - @{$config{dirs}} = grep !/^engines$/, @{$config{dirs}}; - push @{$disabled_info{engine}->{skipped}}, catdir('engines'); - push @{$config{openssl_other_defines}}, $macro; - } - } else { - push @{$config{openssl_other_defines}}, $macro; - } - - } -} - # Make sure build_scheme is consistent. $target{build_scheme} = [ $target{build_scheme} ] if ref($target{build_scheme}) ne "ARRAY"; @@ -1288,10 +1280,8 @@ if ($target{shared_target} eq "") } if ($disabled{"dynamic-engine"}) { - push @{$config{openssl_other_defines}}, "OPENSSL_NO_DYNAMIC_ENGINE"; $config{dynamic_engines} = 0; } else { - push @{$config{openssl_other_defines}}, "OPENSSL_NO_STATIC_ENGINE"; $config{dynamic_engines} = 1; } @@ -1375,6 +1365,7 @@ unless ($disabled{asm}) { } if ($target{aes_asm_src}) { push @{$config{lib_defines}}, "AES_ASM" if ($target{aes_asm_src} =~ m/\baes-/);; + push @{$config{lib_defines}}, "AESNI_ASM" if ($target{aes_asm_src} =~ m/\baesni-/);; # aes-ctr.fake is not a real file, only indication that assembler # module implements AES_ctr32_encrypt... push @{$config{lib_defines}}, "AES_CTR_ASM" if ($target{aes_asm_src} =~ s/\s*aes-ctr\.fake//); @@ -1501,11 +1492,20 @@ if ($strict_warnings) my $wopt; my $gccver = $predefined_C{__GNUC__} // -1; - warn "WARNING --strict-warnings requires gcc[>=4] or gcc-alike" - unless $gccver >= 4; - push @strict_warnings_collection, @gcc_devteam_warn; - push @strict_warnings_collection, @clang_devteam_warn - if (defined($predefined_C{__clang__})); + if ($gccver >= 4) + { + push @strict_warnings_collection, @gcc_devteam_warn; + push @strict_warnings_collection, @clang_devteam_warn + if (defined($predefined_C{__clang__})); + } + elsif ($config{target} =~ /^VC-/) + { + push @strict_warnings_collection, @cl_devteam_warn; + } + else + { + warn "WARNING --strict-warnings requires gcc[>=4] or gcc-alike, or MSVC" + } } if (grep { $_ eq '-static' } @{$config{LDFLAGS}}) { @@ -1552,7 +1552,20 @@ unless ($disabled{afalgeng}) { } } -push @{$config{openssl_other_defines}}, "OPENSSL_NO_AFALGENG" if ($disabled{afalgeng}); +unless ($disabled{devcryptoeng}) { + if ($target =~ m/^BSD/) { + my $maxver = 5*100 + 7; + my $sysstr = `uname -s`; + my $verstr = `uname -r`; + $sysstr =~ s|\R$||; + $verstr =~ s|\R$||; + my ($ma, $mi, @rest) = split m|\.|, $verstr; + my $ver = $ma*100 + $mi; + if ($sysstr eq 'OpenBSD' && $ver >= $maxver) { + disable('too-new-kernel', 'devcryptoeng'); + } + } +} # Get the extra flags used when building shared libraries and modules. We # do this late because some of them depend on %disabled. @@ -1596,6 +1609,49 @@ $target{module_ldflags} = $target{shared_ldflag} unles } # ALL MODIFICATIONS TO %disabled, %config and %target MUST BE DONE FROM HERE ON + +my %disabled_info = (); # For configdata.pm +foreach my $what (sort keys %disabled) { + $config{options} .= " no-$what"; + + if (!grep { $what eq $_ } ( 'buildtest-c++', 'threads', 'shared', 'pic', + 'dynamic-engine', 'makedepend', + 'zlib-dynamic', 'zlib', 'sse2' )) { + (my $WHAT = uc $what) =~ s|-|_|g; + + # Fix up C macro end names + $WHAT = "RMD160" if $what eq "ripemd"; + + # fix-up crypto/directory name(s) + $what = "ripemd" if $what eq "rmd160"; + $what = "whrlpool" if $what eq "whirlpool"; + + my $macro = $disabled_info{$what}->{macro} = "OPENSSL_NO_$WHAT"; + + if ((grep { $what eq $_ } @{$config{sdirs}}) + && $what ne 'async' && $what ne 'err' && $what ne 'dso') { + @{$config{sdirs}} = grep { $what ne $_} @{$config{sdirs}}; + $disabled_info{$what}->{skipped} = [ catdir('crypto', $what) ]; + + if ($what ne 'engine') { + push @{$config{openssl_algorithm_defines}}, $macro; + } else { + @{$config{dirs}} = grep !/^engines$/, @{$config{dirs}}; + push @{$disabled_info{engine}->{skipped}}, catdir('engines'); + push @{$config{openssl_other_defines}}, $macro; + } + } else { + push @{$config{openssl_other_defines}}, $macro; + } + + } +} + +if ($disabled{"dynamic-engine"}) { + push @{$config{openssl_other_defines}}, "OPENSSL_NO_DYNAMIC_ENGINE"; +} else { + push @{$config{openssl_other_defines}}, "OPENSSL_NO_STATIC_ENGINE"; +} # If we use the unified build, collect information from build.info files my %unified_info = (); Modified: head/crypto/openssl/INSTALL ============================================================================== --- head/crypto/openssl/INSTALL Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/INSTALL Wed Mar 18 02:13:12 2020 (r359060) @@ -351,6 +351,9 @@ Don't build support for datagram based BIOs. Selecting this option will also force the disabling of DTLS. + no-dso + Don't build support for loading Dynamic Shared Objects. + enable-devcryptoeng Build the /dev/crypto engine. It is automatically selected on BSD implementations, in which case it can be disabled with @@ -605,11 +608,20 @@ Take note of the VAR=value documentation below and how these flags interact with those variables. - -xxx, +xxx + -xxx, +xxx, /xxx Additional options that are not otherwise recognised are - passed through as they are to the compiler as well. Again, - consult your compiler documentation. + passed through as they are to the compiler as well. + Unix-style options beginning with a '-' or '+' and + Windows-style options beginning with a '/' are recognized. + Again, consult your compiler documentation. + If the option contains arguments separated by spaces, + then the URL-style notation %20 can be used for the space + character in order to avoid having to quote the option. + For example, -opt%20arg gets expanded to -opt arg. + In fact, any ASCII character can be encoded as %xx using its + hexadecimal encoding. + Take note of the VAR=value documentation below and how these flags interact with those variables. @@ -1071,7 +1083,7 @@ HASHBANGPERL The command string for the Perl executable to insert in the - #! line of perl scripts that will be publically installed. + #! line of perl scripts that will be publicly installed. Default: /usr/bin/env perl Note: the value of this variable is added to the same scripts on all platforms, but it's only relevant on Unix-like platforms. Modified: head/crypto/openssl/NEWS ============================================================================== --- head/crypto/openssl/NEWS Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/NEWS Wed Mar 18 02:13:12 2020 (r359060) @@ -5,6 +5,11 @@ This file gives a brief overview of the major changes between each OpenSSL release. For more details please read the CHANGES file. + Major changes between OpenSSL 1.1.1d and OpenSSL 1.1.1e [17 Mar 2020] + + o Fixed an overflow bug in the x64_64 Montgomery squaring procedure + used in exponentiation with 512-bit moduli (CVE-2019-1551) + Major changes between OpenSSL 1.1.1c and OpenSSL 1.1.1d [10 Sep 2019] o Fixed a fork protection issue (CVE-2019-1549) Modified: head/crypto/openssl/README ============================================================================== --- head/crypto/openssl/README Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/README Wed Mar 18 02:13:12 2020 (r359060) @@ -1,5 +1,5 @@ - OpenSSL 1.1.1d 10 Sep 2019 + OpenSSL 1.1.1e 17 Mar 2020 Copyright (c) 1998-2019 The OpenSSL Project Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson Modified: head/crypto/openssl/apps/apps.c ============================================================================== --- head/crypto/openssl/apps/apps.c Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/apps/apps.c Wed Mar 18 02:13:12 2020 (r359060) @@ -1962,26 +1962,46 @@ unsigned char *next_protos_parse(size_t *outlen, const size_t len; unsigned char *out; size_t i, start = 0; + size_t skipped = 0; len = strlen(in); - if (len >= 65535) + if (len == 0 || len >= 65535) return NULL; - out = app_malloc(strlen(in) + 1, "NPN buffer"); + out = app_malloc(len + 1, "NPN buffer"); for (i = 0; i <= len; ++i) { if (i == len || in[i] == ',') { + /* + * Zero-length ALPN elements are invalid on the wire, we could be + * strict and reject the entire string, but just ignoring extra + * commas seems harmless and more friendly. + * + * Every comma we skip in this way puts the input buffer another + * byte ahead of the output buffer, so all stores into the output + * buffer need to be decremented by the number commas skipped. + */ + if (i == start) { + ++start; + ++skipped; + continue; + } if (i - start > 255) { OPENSSL_free(out); return NULL; } - out[start] = (unsigned char)(i - start); + out[start-skipped] = (unsigned char)(i - start); start = i + 1; } else { - out[i + 1] = in[i]; + out[i + 1 - skipped] = in[i]; } } - *outlen = len + 1; + if (len <= skipped) { + OPENSSL_free(out); + return NULL; + } + + *outlen = len + 1 - skipped; return out; } Modified: head/crypto/openssl/apps/apps.h ============================================================================== --- head/crypto/openssl/apps/apps.h Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/apps/apps.h Wed Mar 18 02:13:12 2020 (r359060) @@ -7,8 +7,8 @@ * https://www.openssl.org/source/license.html */ -#ifndef HEADER_APPS_H -# define HEADER_APPS_H +#ifndef OSSL_APPS_H +# define OSSL_APPS_H # include "e_os.h" /* struct timeval for DTLS */ # include "internal/nelem.h" Modified: head/crypto/openssl/apps/dgst.c ============================================================================== --- head/crypto/openssl/apps/dgst.c Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/apps/dgst.c Wed Mar 18 02:13:12 2020 (r359060) @@ -19,6 +19,7 @@ #include #include #include +#include #undef BUFSIZE #define BUFSIZE 1024*8 @@ -27,9 +28,15 @@ int do_fp(BIO *out, unsigned char *buf, BIO *bp, int s EVP_PKEY *key, unsigned char *sigin, int siglen, const char *sig_name, const char *md_name, const char *file); +static void show_digests(const OBJ_NAME *name, void *bio_); +struct doall_dgst_digests { + BIO *bio; + int n; +}; + typedef enum OPTION_choice { - OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, + OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, OPT_LIST, OPT_C, OPT_R, OPT_OUT, OPT_SIGN, OPT_PASSIN, OPT_VERIFY, OPT_PRVERIFY, OPT_SIGNATURE, OPT_KEYFORM, OPT_ENGINE, OPT_ENGINE_IMPL, OPT_HEX, OPT_BINARY, OPT_DEBUG, OPT_FIPS_FINGERPRINT, @@ -43,6 +50,7 @@ const OPTIONS dgst_options[] = { {OPT_HELP_STR, 1, '-', " file... files to digest (default is stdin)\n"}, {"help", OPT_HELP, '-', "Display this summary"}, + {"list", OPT_LIST, '-', "List digests"}, {"c", OPT_C, '-', "Print the digest with separating colons"}, {"r", OPT_R, '-', "Print the digest in coreutils format"}, {"out", OPT_OUT, '>', "Output to filename rather than stdout"}, @@ -91,6 +99,7 @@ int dgst_main(int argc, char **argv) int i, ret = 1, out_bin = -1, want_pub = 0, do_verify = 0; unsigned char *buf = NULL, *sigbuf = NULL; int engine_impl = 0; + struct doall_dgst_digests dec; prog = opt_progname(argv[0]); buf = app_malloc(BUFSIZE, "I/O buffer"); @@ -108,6 +117,15 @@ int dgst_main(int argc, char **argv) opt_help(dgst_options); ret = 0; goto end; + case OPT_LIST: + BIO_printf(bio_out, "Supported digests:\n"); + dec.bio = bio_out; + dec.n = 0; + OBJ_NAME_do_all_sorted(OBJ_NAME_TYPE_MD_METH, + show_digests, &dec); + BIO_printf(bio_out, "\n"); + ret = 0; + goto end; case OPT_C: separator = 1; break; @@ -413,20 +431,86 @@ int dgst_main(int argc, char **argv) return ret; } +static void show_digests(const OBJ_NAME *name, void *arg) +{ + struct doall_dgst_digests *dec = (struct doall_dgst_digests *)arg; + const EVP_MD *md = NULL; + + /* Filter out signed digests (a.k.a signature algorithms) */ + if (strstr(name->name, "rsa") != NULL || strstr(name->name, "RSA") != NULL) + return; + + if (!islower((unsigned char)*name->name)) + return; + + /* Filter out message digests that we cannot use */ + md = EVP_get_digestbyname(name->name); + if (md == NULL) + return; + + BIO_printf(dec->bio, "-%-25s", name->name); + if (++dec->n == 3) { + BIO_printf(dec->bio, "\n"); + dec->n = 0; + } else { + BIO_printf(dec->bio, " "); + } +} + +/* + * The newline_escape_filename function performs newline escaping for any + * filename that contains a newline. This function also takes a pointer + * to backslash. The backslash pointer is a flag to indicating whether a newline + * is present in the filename. If a newline is present, the backslash flag is + * set and the output format will contain a backslash at the beginning of the + * digest output. This output format is to replicate the output format found + * in the '*sum' checksum programs. This aims to preserve backward + * compatibility. + */ +static const char *newline_escape_filename(const char *file, int * backslash) +{ + size_t i, e = 0, length = strlen(file), newline_count = 0, mem_len = 0; + char *file_cpy = NULL; + + for (i = 0; i < length; i++) + if (file[i] == '\n') + newline_count++; + + mem_len = length + newline_count + 1; + file_cpy = app_malloc(mem_len, file); + i = 0; + + while(e < length) { + const char c = file[e]; + if (c == '\n') { + file_cpy[i++] = '\\'; + file_cpy[i++] = 'n'; + *backslash = 1; + } else { + file_cpy[i++] = c; + } + e++; + } + file_cpy[i] = '\0'; + return (const char*)file_cpy; +} + + int do_fp(BIO *out, unsigned char *buf, BIO *bp, int sep, int binout, EVP_PKEY *key, unsigned char *sigin, int siglen, const char *sig_name, const char *md_name, const char *file) { - size_t len; - int i; + size_t len = BUFSIZE; + int i, backslash = 0, ret = 1; + unsigned char *sigbuf = NULL; while (BIO_pending(bp) || !BIO_eof(bp)) { i = BIO_read(bp, (char *)buf, BUFSIZE); if (i < 0) { BIO_printf(bio_err, "Read Error in %s\n", file); ERR_print_errors(bio_err); - return 1; + goto end; } if (i == 0) break; @@ -439,37 +523,51 @@ int do_fp(BIO *out, unsigned char *buf, BIO *bp, int s BIO_printf(out, "Verified OK\n"); } else if (i == 0) { BIO_printf(out, "Verification Failure\n"); - return 1; + goto end; } else { BIO_printf(bio_err, "Error Verifying Data\n"); ERR_print_errors(bio_err); - return 1; + goto end; } - return 0; + ret = 0; + goto end; } if (key != NULL) { EVP_MD_CTX *ctx; + int pkey_len; BIO_get_md_ctx(bp, &ctx); - len = BUFSIZE; + pkey_len = EVP_PKEY_size(key); + if (pkey_len > BUFSIZE) { + len = pkey_len; + sigbuf = app_malloc(len, "Signature buffer"); + buf = sigbuf; + } if (!EVP_DigestSignFinal(ctx, buf, &len)) { BIO_printf(bio_err, "Error Signing Data\n"); ERR_print_errors(bio_err); - return 1; + goto end; } } else { len = BIO_gets(bp, (char *)buf, BUFSIZE); if ((int)len < 0) { ERR_print_errors(bio_err); - return 1; + goto end; } } if (binout) { BIO_write(out, buf, len); } else if (sep == 2) { + file = newline_escape_filename(file, &backslash); + + if (backslash == 1) + BIO_puts(out, "\\"); + for (i = 0; i < (int)len; i++) BIO_printf(out, "%02x", buf[i]); + BIO_printf(out, " *%s\n", file); + OPENSSL_free((char *)file); } else { if (sig_name != NULL) { BIO_puts(out, sig_name); @@ -488,5 +586,11 @@ int do_fp(BIO *out, unsigned char *buf, BIO *bp, int s } BIO_printf(out, "\n"); } - return 0; + + ret = 0; + end: + if (sigbuf != NULL) + OPENSSL_clear_free(sigbuf, len); + + return ret; } Modified: head/crypto/openssl/apps/enc.c ============================================================================== --- head/crypto/openssl/apps/enc.c Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/apps/enc.c Wed Mar 18 02:13:12 2020 (r359060) @@ -50,7 +50,8 @@ typedef enum OPTION_choice { const OPTIONS enc_options[] = { {"help", OPT_HELP, '-', "Display this summary"}, - {"ciphers", OPT_LIST, '-', "List ciphers"}, + {"list", OPT_LIST, '-', "List ciphers"}, + {"ciphers", OPT_LIST, '-', "Alias for -list"}, {"in", OPT_IN, '<', "Input file"}, {"out", OPT_OUT, '>', "Output file"}, {"pass", OPT_PASS, 's', "Passphrase source"}, Modified: head/crypto/openssl/apps/ocsp.c ============================================================================== --- head/crypto/openssl/apps/ocsp.c Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/apps/ocsp.c Wed Mar 18 02:13:12 2020 (r359060) @@ -114,7 +114,7 @@ static int acfd = (int) INVALID_SOCKET; static int index_changed(CA_DB *); static void spawn_loop(void); static int print_syslog(const char *str, size_t len, void *levPtr); -static void sock_timeout(int signum); +static void socket_timeout(int signum); # endif # ifndef OPENSSL_NO_SOCK @@ -597,7 +597,7 @@ int ocsp_main(int argc, char **argv) if (multi && acbio != NULL) spawn_loop(); if (acbio != NULL && req_timeout > 0) - signal(SIGALRM, sock_timeout); + signal(SIGALRM, socket_timeout); #endif if (acbio != NULL) @@ -1352,7 +1352,7 @@ static int urldecode(char *p) # endif # ifdef OCSP_DAEMON -static void sock_timeout(int signum) +static void socket_timeout(int signum) { if (acfd != (int)INVALID_SOCKET) (void)shutdown(acfd, SHUT_RD); Modified: head/crypto/openssl/apps/openssl.c ============================================================================== --- head/crypto/openssl/apps/openssl.c Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/apps/openssl.c Wed Mar 18 02:13:12 2020 (r359060) @@ -164,6 +164,13 @@ int main(int argc, char *argv[]) } prog = prog_init(); + if (prog == NULL) { + BIO_printf(bio_err, + "FATAL: Startup failure (dev note: prog_init() failed)\n"); + ERR_print_errors(bio_err); + ret = 1; + goto end; + } pname = opt_progname(argv[0]); /* first check the program name */ Modified: head/crypto/openssl/apps/passwd.c ============================================================================== --- head/crypto/openssl/apps/passwd.c Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/apps/passwd.c Wed Mar 18 02:13:12 2020 (r359060) @@ -807,7 +807,7 @@ static int do_passwd(int passed_salt, char **salt_p, c (*salt_p)[i] = cov_2char[(*salt_p)[i] & 0x3f]; /* 6 bits */ (*salt_p)[i] = 0; # ifdef CHARSET_EBCDIC - /* The password encryption funtion will convert back to ASCII */ + /* The password encryption function will convert back to ASCII */ ascii2ebcdic(*salt_p, *salt_p, saltlen); # endif } Modified: head/crypto/openssl/apps/pkcs12.c ============================================================================== --- head/crypto/openssl/apps/pkcs12.c Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/apps/pkcs12.c Wed Mar 18 02:13:12 2020 (r359060) @@ -41,6 +41,7 @@ int dump_certs_pkeys_bags(BIO *out, const STACK_OF(PKC int dump_certs_pkeys_bag(BIO *out, const PKCS12_SAFEBAG *bags, const char *pass, int passlen, int options, char *pempass, const EVP_CIPHER *enc); +void print_attribute(BIO *out, const ASN1_TYPE *av); int print_attribs(BIO *out, const STACK_OF(X509_ATTRIBUTE) *attrlst, const char *name); void hex_prin(BIO *out, unsigned char *buf, int len); @@ -878,6 +879,38 @@ int cert_load(BIO *in, STACK_OF(X509) *sk) return ret; } +/* Generalised x509 attribute value print */ + +void print_attribute(BIO *out, const ASN1_TYPE *av) +{ + char *value; + + switch (av->type) { + case V_ASN1_BMPSTRING: + value = OPENSSL_uni2asc(av->value.bmpstring->data, + av->value.bmpstring->length); + BIO_printf(out, "%s\n", value); + OPENSSL_free(value); + break; + + case V_ASN1_OCTET_STRING: + hex_prin(out, av->value.octet_string->data, + av->value.octet_string->length); + BIO_printf(out, "\n"); + break; + + case V_ASN1_BIT_STRING: + hex_prin(out, av->value.bit_string->data, + av->value.bit_string->length); + BIO_printf(out, "\n"); + break; + + default: + BIO_printf(out, "\n", av->type); + break; + } +} + /* Generalised attribute print: handle PKCS#8 and bag attributes */ int print_attribs(BIO *out, const STACK_OF(X509_ATTRIBUTE) *attrlst, @@ -885,8 +918,7 @@ int print_attribs(BIO *out, const STACK_OF(X509_ATTRIB { X509_ATTRIBUTE *attr; ASN1_TYPE *av; - char *value; - int i, attr_nid; + int i, j, attr_nid; if (!attrlst) { BIO_printf(out, "%s: \n", name); return 1; @@ -910,30 +942,10 @@ int print_attribs(BIO *out, const STACK_OF(X509_ATTRIB } if (X509_ATTRIBUTE_count(attr)) { - av = X509_ATTRIBUTE_get0_type(attr, 0); - switch (av->type) { - case V_ASN1_BMPSTRING: - value = OPENSSL_uni2asc(av->value.bmpstring->data, - av->value.bmpstring->length); - BIO_printf(out, "%s\n", value); - OPENSSL_free(value); - break; - - case V_ASN1_OCTET_STRING: - hex_prin(out, av->value.octet_string->data, - av->value.octet_string->length); - BIO_printf(out, "\n"); - break; - - case V_ASN1_BIT_STRING: - hex_prin(out, av->value.bit_string->data, - av->value.bit_string->length); - BIO_printf(out, "\n"); - break; - - default: - BIO_printf(out, "\n", av->type); - break; + for (j = 0; j < X509_ATTRIBUTE_count(attr); j++) + { + av = X509_ATTRIBUTE_get0_type(attr, j); + print_attribute(out, av); } } else { BIO_printf(out, "\n"); Modified: head/crypto/openssl/apps/pkeyutl.c ============================================================================== --- head/crypto/openssl/apps/pkeyutl.c Wed Mar 18 01:55:27 2020 (r359059) +++ head/crypto/openssl/apps/pkeyutl.c Wed Mar 18 02:13:12 2020 (r359060) @@ -1,5 +1,5 @@ /* - * Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-2020 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -299,8 +299,7 @@ int pkeyutl_main(int argc, char **argv) /* Sanity check the input */ if (buf_inlen > EVP_MAX_MD_SIZE && (pkey_op == EVP_PKEY_OP_SIGN - || pkey_op == EVP_PKEY_OP_VERIFY - || pkey_op == EVP_PKEY_OP_VERIFYRECOVER)) { + || pkey_op == EVP_PKEY_OP_VERIFY)) { BIO_printf(bio_err, "Error: The input data looks too long to be a hash\n"); goto end; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@freebsd.org Wed Mar 18 02:20:04 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 8107F279CAA; Wed, 18 Mar 2020 02:20:04 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48htzS1R3Fz4Xlh; Wed, 18 Mar 2020 02:20:04 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C6D0E1AE37; Wed, 18 Mar 2020 02:20:03 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02I2K3Sg025738; Wed, 18 Mar 2020 02:20:03 GMT (envelope-from jkim@FreeBSD.org) Received: (from jkim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02I2K3nK025725; Wed, 18 Mar 2020 02:20:03 GMT (envelope-from jkim@FreeBSD.org) Message-Id: <202003180220.02I2K3nK025725@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jkim set sender to jkim@FreeBSD.org using -f From: Jung-uk Kim Date: Wed, 18 Mar 2020 02:20:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359061 - head/secure/lib/libcrypto X-SVN-Group: head X-SVN-Commit-Author: jkim X-SVN-Commit-Paths: head/secure/lib/libcrypto X-SVN-Commit-Revision: 359061 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 02:20:04 -0000 Author: jkim Date: Wed Mar 18 02:20:03 2020 New Revision: 359061 URL: https://svnweb.freebsd.org/changeset/base/359061 Log: Reduce diff with the vendor version. No functional change. Modified: head/secure/lib/libcrypto/opensslconf.h.in Modified: head/secure/lib/libcrypto/opensslconf.h.in ============================================================================== --- head/secure/lib/libcrypto/opensslconf.h.in Wed Mar 18 02:13:12 2020 (r359060) +++ head/secure/lib/libcrypto/opensslconf.h.in Wed Mar 18 02:20:03 2020 (r359061) @@ -34,6 +34,9 @@ extern "C" { #ifndef OPENSSL_RAND_SEED_OS # define OPENSSL_RAND_SEED_OS #endif +#ifndef OPENSSL_NO_AFALGENG +# define OPENSSL_NO_AFALGENG +#endif #ifndef OPENSSL_NO_ASAN # define OPENSSL_NO_ASAN #endif @@ -84,9 +87,6 @@ extern "C" { #endif #ifndef OPENSSL_NO_STATIC_ENGINE # define OPENSSL_NO_STATIC_ENGINE -#endif -#ifndef OPENSSL_NO_AFALGENG -# define OPENSSL_NO_AFALGENG #endif From owner-svn-src-head@freebsd.org Wed Mar 18 02:58:21 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id BA6C727A50D; Wed, 18 Mar 2020 02:58:21 +0000 (UTC) (envelope-from bdragon@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hvqd2nKXz4CZX; Wed, 18 Mar 2020 02:58:21 +0000 (UTC) (envelope-from bdragon@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id F02401B56C; Wed, 18 Mar 2020 02:58:20 +0000 (UTC) (envelope-from bdragon@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02I2wKO9049411; Wed, 18 Mar 2020 02:58:20 GMT (envelope-from bdragon@FreeBSD.org) Received: (from bdragon@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02I2wI3G049399; Wed, 18 Mar 2020 02:58:18 GMT (envelope-from bdragon@FreeBSD.org) Message-Id: <202003180258.02I2wI3G049399@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdragon set sender to bdragon@FreeBSD.org using -f From: Brandon Bergren Date: Wed, 18 Mar 2020 02:58:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359062 - in head/sys: amd64/amd64 arm/arm arm64/arm64 i386/i386 kern mips/mips powerpc/powerpc riscv/riscv sys X-SVN-Group: head X-SVN-Commit-Author: bdragon X-SVN-Commit-Paths: in head/sys: amd64/amd64 arm/arm arm64/arm64 i386/i386 kern mips/mips powerpc/powerpc riscv/riscv sys X-SVN-Commit-Revision: 359062 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 02:58:21 -0000 Author: bdragon Date: Wed Mar 18 02:58:18 2020 New Revision: 359062 URL: https://svnweb.freebsd.org/changeset/base/359062 Log: [PowerPC][Book-E] Fix missing load base in elf_cpu_parse_dynamic(). When I implemented MD DYNAMIC parsing, I was originally passing a linker_file_t so that the MD code could relocate pointers. However, it turns out this isn't even filled in until later, so it was always 0. Just pass the load base (ef->address) directly, as that's really the only thing we were interested in in the first place. This fixes a crash on RB800 where it was trying to write to an unmapped address when updating the GOT. Reviewed by: jhibbits Sponsored by: Tag1 Consulting, Inc. Differential Revision: https://reviews.freebsd.org/D24105 Modified: head/sys/amd64/amd64/elf_machdep.c head/sys/arm/arm/elf_machdep.c head/sys/arm64/arm64/elf_machdep.c head/sys/i386/i386/elf_machdep.c head/sys/kern/link_elf.c head/sys/mips/mips/elf_machdep.c head/sys/powerpc/powerpc/elf32_machdep.c head/sys/powerpc/powerpc/elf64_machdep.c head/sys/riscv/riscv/elf_machdep.c head/sys/sys/linker.h Modified: head/sys/amd64/amd64/elf_machdep.c ============================================================================== --- head/sys/amd64/amd64/elf_machdep.c Wed Mar 18 02:20:03 2020 (r359061) +++ head/sys/amd64/amd64/elf_machdep.c Wed Mar 18 02:58:18 2020 (r359062) @@ -331,7 +331,7 @@ elf_cpu_unload_file(linker_file_t lf __unused) } int -elf_cpu_parse_dynamic(linker_file_t lf __unused, Elf_Dyn *dynamic __unused) +elf_cpu_parse_dynamic(caddr_t loadbase __unused, Elf_Dyn *dynamic __unused) { return (0); Modified: head/sys/arm/arm/elf_machdep.c ============================================================================== --- head/sys/arm/arm/elf_machdep.c Wed Mar 18 02:20:03 2020 (r359061) +++ head/sys/arm/arm/elf_machdep.c Wed Mar 18 02:58:18 2020 (r359062) @@ -327,7 +327,7 @@ elf_cpu_load_file(linker_file_t lf) } int -elf_cpu_parse_dynamic(linker_file_t lf __unused, Elf_Dyn *dynamic __unused) +elf_cpu_parse_dynamic(caddr_t loadbase __unused, Elf_Dyn *dynamic __unused) { return (0); Modified: head/sys/arm64/arm64/elf_machdep.c ============================================================================== --- head/sys/arm64/arm64/elf_machdep.c Wed Mar 18 02:20:03 2020 (r359061) +++ head/sys/arm64/arm64/elf_machdep.c Wed Mar 18 02:58:18 2020 (r359062) @@ -258,7 +258,7 @@ elf_cpu_unload_file(linker_file_t lf __unused) } int -elf_cpu_parse_dynamic(linker_file_t lf __unused, Elf_Dyn *dynamic __unused) +elf_cpu_parse_dynamic(caddr_t loadbase __unused, Elf_Dyn *dynamic __unused) { return (0); Modified: head/sys/i386/i386/elf_machdep.c ============================================================================== --- head/sys/i386/i386/elf_machdep.c Wed Mar 18 02:20:03 2020 (r359061) +++ head/sys/i386/i386/elf_machdep.c Wed Mar 18 02:58:18 2020 (r359062) @@ -297,7 +297,7 @@ elf_cpu_unload_file(linker_file_t lf __unused) } int -elf_cpu_parse_dynamic(linker_file_t lf __unused, Elf_Dyn *dynamic __unused) +elf_cpu_parse_dynamic(caddr_t loadbase __unused, Elf_Dyn *dynamic __unused) { return (0); Modified: head/sys/kern/link_elf.c ============================================================================== --- head/sys/kern/link_elf.c Wed Mar 18 02:20:03 2020 (r359061) +++ head/sys/kern/link_elf.c Wed Mar 18 02:58:18 2020 (r359062) @@ -620,7 +620,7 @@ parse_dynamic(elf_file_t ef) ef->ddbstrtab = ef->strtab; ef->ddbstrcnt = ef->strsz; - return elf_cpu_parse_dynamic(&ef->lf, ef->dynamic); + return elf_cpu_parse_dynamic(ef->address, ef->dynamic); } #define LS_PADDING 0x90909090 Modified: head/sys/mips/mips/elf_machdep.c ============================================================================== --- head/sys/mips/mips/elf_machdep.c Wed Mar 18 02:20:03 2020 (r359061) +++ head/sys/mips/mips/elf_machdep.c Wed Mar 18 02:58:18 2020 (r359062) @@ -503,7 +503,7 @@ elf_cpu_unload_file(linker_file_t lf __unused) } int -elf_cpu_parse_dynamic(linker_file_t lf __unused, Elf_Dyn *dynamic __unused) +elf_cpu_parse_dynamic(caddr_t loadbase __unused, Elf_Dyn *dynamic __unused) { return (0); Modified: head/sys/powerpc/powerpc/elf32_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/elf32_machdep.c Wed Mar 18 02:20:03 2020 (r359061) +++ head/sys/powerpc/powerpc/elf32_machdep.c Wed Mar 18 02:58:18 2020 (r359062) @@ -403,7 +403,7 @@ ppc32_runtime_resolve() } int -elf_cpu_parse_dynamic(linker_file_t lf, Elf_Dyn *dynamic) +elf_cpu_parse_dynamic(caddr_t loadbase, Elf_Dyn *dynamic) { Elf_Dyn *dp; bool has_plt = false; @@ -414,7 +414,7 @@ elf_cpu_parse_dynamic(linker_file_t lf, Elf_Dyn *dynam switch (dp->d_tag) { case DT_PPC_GOT: secure_plt = true; - got = (Elf_Addr *)(lf->address + dp->d_un.d_ptr); + got = (Elf_Addr *)(loadbase + dp->d_un.d_ptr); /* Install runtime resolver canary. */ got[1] = (Elf_Addr)ppc32_runtime_resolve; got[2] = (Elf_Addr)0; Modified: head/sys/powerpc/powerpc/elf64_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/elf64_machdep.c Wed Mar 18 02:20:03 2020 (r359061) +++ head/sys/powerpc/powerpc/elf64_machdep.c Wed Mar 18 02:58:18 2020 (r359062) @@ -416,7 +416,7 @@ elf_cpu_unload_file(linker_file_t lf __unused) } int -elf_cpu_parse_dynamic(linker_file_t lf __unused, Elf_Dyn *dynamic __unused) +elf_cpu_parse_dynamic(caddr_t loadbase __unused, Elf_Dyn *dynamic __unused) { return (0); Modified: head/sys/riscv/riscv/elf_machdep.c ============================================================================== --- head/sys/riscv/riscv/elf_machdep.c Wed Mar 18 02:20:03 2020 (r359061) +++ head/sys/riscv/riscv/elf_machdep.c Wed Mar 18 02:58:18 2020 (r359062) @@ -506,7 +506,7 @@ elf_cpu_unload_file(linker_file_t lf __unused) } int -elf_cpu_parse_dynamic(linker_file_t lf __unused, Elf_Dyn *dynamic __unused) +elf_cpu_parse_dynamic(caddr_t loadbase __unused, Elf_Dyn *dynamic __unused) { return (0); Modified: head/sys/sys/linker.h ============================================================================== --- head/sys/sys/linker.h Wed Mar 18 02:20:03 2020 (r359061) +++ head/sys/sys/linker.h Wed Mar 18 02:58:18 2020 (r359062) @@ -305,7 +305,7 @@ int linker_ctf_get(linker_file_t, linker_ctf_t *); int elf_cpu_load_file(linker_file_t); int elf_cpu_unload_file(linker_file_t); -int elf_cpu_parse_dynamic(linker_file_t, Elf_Dyn *); +int elf_cpu_parse_dynamic(caddr_t, Elf_Dyn *); /* values for type */ #define ELF_RELOC_REL 1 From owner-svn-src-head@freebsd.org Wed Mar 18 03:14:19 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 5701427AB4D; Wed, 18 Mar 2020 03:14:19 +0000 (UTC) (envelope-from bcran@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hwB22q7xz4XBc; Wed, 18 Mar 2020 03:14:18 +0000 (UTC) (envelope-from bcran@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 47FA71B9A3; Wed, 18 Mar 2020 03:14:18 +0000 (UTC) (envelope-from bcran@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02I3EIxj062743; Wed, 18 Mar 2020 03:14:18 GMT (envelope-from bcran@FreeBSD.org) Received: (from bcran@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02I3EI7e062742; Wed, 18 Mar 2020 03:14:18 GMT (envelope-from bcran@FreeBSD.org) Message-Id: <202003180314.02I3EI7e062742@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bcran set sender to bcran@FreeBSD.org using -f From: Rebecca Cran Date: Wed, 18 Mar 2020 03:14:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359063 - head/sys/dev/ath/ath_hal X-SVN-Group: head X-SVN-Commit-Author: bcran X-SVN-Commit-Paths: head/sys/dev/ath/ath_hal X-SVN-Commit-Revision: 359063 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 03:14:19 -0000 Author: bcran Date: Wed Mar 18 03:14:17 2020 New Revision: 359063 URL: https://svnweb.freebsd.org/changeset/base/359063 Log: ath_hal: fix typo in ath_hal_printf Modified: head/sys/dev/ath/ath_hal/ah_regdomain.c Modified: head/sys/dev/ath/ath_hal/ah_regdomain.c ============================================================================== --- head/sys/dev/ath/ath_hal/ah_regdomain.c Wed Mar 18 02:58:18 2020 (r359062) +++ head/sys/dev/ath/ath_hal/ah_regdomain.c Wed Mar 18 03:14:17 2020 (r359063) @@ -695,7 +695,7 @@ getchannels(struct ath_hal *ah, else if (cm->flags & IEEE80211_CHAN_2GHZ) rd = rd2GHz; else { - ath_hal_printf(ah, "%s: Unkonwn HAL flags 0x%x\n", + ath_hal_printf(ah, "%s: Unknown HAL flags 0x%x\n", __func__, cm->flags); return HAL_EINVAL; } From owner-svn-src-head@freebsd.org Wed Mar 18 03:15:58 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id B4FD227ABFE; Wed, 18 Mar 2020 03:15:58 +0000 (UTC) (envelope-from bcran@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hwCy2hjgz4br5; Wed, 18 Mar 2020 03:15:58 +0000 (UTC) (envelope-from bcran@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2C3E31B9A6; Wed, 18 Mar 2020 03:15:58 +0000 (UTC) (envelope-from bcran@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02I3Fw1V062921; Wed, 18 Mar 2020 03:15:58 GMT (envelope-from bcran@FreeBSD.org) Received: (from bcran@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02I3FwrN062920; Wed, 18 Mar 2020 03:15:58 GMT (envelope-from bcran@FreeBSD.org) Message-Id: <202003180315.02I3FwrN062920@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bcran set sender to bcran@FreeBSD.org using -f From: Rebecca Cran Date: Wed, 18 Mar 2020 03:15:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359064 - head/usr.sbin/bhyve X-SVN-Group: head X-SVN-Commit-Author: bcran X-SVN-Commit-Paths: head/usr.sbin/bhyve X-SVN-Commit-Revision: 359064 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 03:15:58 -0000 Author: bcran Date: Wed Mar 18 03:15:57 2020 New Revision: 359064 URL: https://svnweb.freebsd.org/changeset/base/359064 Log: Bhyve: DPRINTF already includes newline, so don't add another Reviewed by: jhb, vmaffione, emaste Differential Revision: https://reviews.freebsd.org/D24099 Modified: head/usr.sbin/bhyve/pci_fbuf.c Modified: head/usr.sbin/bhyve/pci_fbuf.c ============================================================================== --- head/usr.sbin/bhyve/pci_fbuf.c Wed Mar 18 03:14:17 2020 (r359063) +++ head/usr.sbin/bhyve/pci_fbuf.c Wed Mar 18 03:15:57 2020 (r359064) @@ -135,7 +135,7 @@ pci_fbuf_write(struct vmctx *ctx, int vcpu, struct pci sc = pi->pi_arg; DPRINTF(DEBUG_VERBOSE, - ("fbuf wr: offset 0x%lx, size: %d, value: 0x%lx\n", + ("fbuf wr: offset 0x%lx, size: %d, value: 0x%lx", offset, size, value)); if (offset + size > DMEMSZ) { @@ -217,7 +217,7 @@ pci_fbuf_read(struct vmctx *ctx, int vcpu, struct pci_ } DPRINTF(DEBUG_VERBOSE, - ("fbuf rd: offset 0x%lx, size: %d, value: 0x%lx\n", + ("fbuf rd: offset 0x%lx, size: %d, value: 0x%lx", offset, size, value)); return (value); From owner-svn-src-head@freebsd.org Wed Mar 18 03:17:16 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 560D627AC82; Wed, 18 Mar 2020 03:17:16 +0000 (UTC) (envelope-from bcran@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hwFS0dGxz4fcd; Wed, 18 Mar 2020 03:17:16 +0000 (UTC) (envelope-from bcran@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id ABAF31B9C6; Wed, 18 Mar 2020 03:17:15 +0000 (UTC) (envelope-from bcran@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02I3HF7p063039; Wed, 18 Mar 2020 03:17:15 GMT (envelope-from bcran@FreeBSD.org) Received: (from bcran@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02I3HFgS063038; Wed, 18 Mar 2020 03:17:15 GMT (envelope-from bcran@FreeBSD.org) Message-Id: <202003180317.02I3HFgS063038@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bcran set sender to bcran@FreeBSD.org using -f From: Rebecca Cran Date: Wed, 18 Mar 2020 03:17:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359065 - head/usr.sbin/bhyve X-SVN-Group: head X-SVN-Commit-Author: bcran X-SVN-Commit-Paths: head/usr.sbin/bhyve X-SVN-Commit-Revision: 359065 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 03:17:16 -0000 Author: bcran Date: Wed Mar 18 03:17:15 2020 New Revision: 359065 URL: https://svnweb.freebsd.org/changeset/base/359065 Log: Bhyve: log message when rfb client connects Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D24098 Modified: head/usr.sbin/bhyve/rfb.c Modified: head/usr.sbin/bhyve/rfb.c ============================================================================== --- head/usr.sbin/bhyve/rfb.c Wed Mar 18 03:15:57 2020 (r359064) +++ head/usr.sbin/bhyve/rfb.c Wed Mar 18 03:17:15 2020 (r359065) @@ -1049,6 +1049,7 @@ rfb_init(char *hostname, int port, int wait, char *pas pthread_mutex_lock(&rc->mtx); pthread_cond_wait(&rc->cond, &rc->mtx); pthread_mutex_unlock(&rc->mtx); + DPRINTF(("rfb client connected")); } freeaddrinfo(ai); From owner-svn-src-head@freebsd.org Wed Mar 18 03:31:55 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 9A06A27B042; Wed, 18 Mar 2020 03:31:55 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from mail.allbsd.org (mx.allbsd.org [IPv6:2001:2f0:104:e001::41]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature ECDSA (P-384) client-digest SHA384) (Client CN "mail.allbsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hwZL4QKnz4LVj; Wed, 18 Mar 2020 03:31:54 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from mail-d.allbsd.org ([IPv6:2409:11:a740:4700:58:65ff:fe00:b0b]) (authenticated bits=56) by mail.allbsd.org (8.15.2/8.15.2) with ESMTPSA id 02I3VPvj092919 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=OK) (Client CN "/CN=mail-d.allbsd.org", Issuer "/C=US/O=Let's+20Encrypt/CN=Let's+20Encrypt+20Authority+20X3"); Wed, 18 Mar 2020 12:31:37 +0900 (JST) (envelope-from hrs@FreeBSD.org) Received: from alph.d.allbsd.org ([IPv6:2409:11:a740:4700:16:ceff:fe34:2700]) by mail-d.allbsd.org (8.15.2/8.15.2) with ESMTPS id 02I3VKTT028531 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Wed, 18 Mar 2020 12:31:20 +0900 (JST) (envelope-from hrs@FreeBSD.org) Received: from localhost (localhost [[UNIX: localhost]]) (authenticated bits=0) by alph.d.allbsd.org (8.15.2/8.15.2) with ESMTPA id 02I3VK9k028527; Wed, 18 Mar 2020 12:31:20 +0900 (JST) (envelope-from hrs@FreeBSD.org) Date: Wed, 18 Mar 2020 12:29:24 +0900 (JST) Message-Id: <20200318.122924.1446699160859237014.hrs@FreeBSD.org> To: brooks@FreeBSD.org Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r359046 - head/share/mk From: Hiroki Sato In-Reply-To: <202003171817.02HIHWdY035423@repo.freebsd.org> References: <202003171817.02HIHWdY035423@repo.freebsd.org> X-Old-PGPkey-fingerprint: BDB3 443F A5DD B3D0 A530 FFD7 4F2C D3D8 2793 CF2D X-PGPkey-fingerprint: 6C0D 2353 27CF 80C7 901E FDD2 DBB0 7DC6 6F1F 737F X-Mailer: Mew version 6.8 on Emacs 26.3 Mime-Version: 1.0 Content-Type: Multipart/Signed; protocol="application/pgp-signature"; micalg=pgp-sha512; boundary="--Security_Multipart(Wed_Mar_18_12_29_24_2020_910)--" Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.6.2 (mail.allbsd.org [IPv6:2001:2f0:104:e001:0:0:0:41]); Wed, 18 Mar 2020 12:31:43 +0900 (JST) X-Rspamd-Queue-Id: 48hwZL4QKnz4LVj X-Spamd-Bar: + Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [1.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_SPAM_LONG(0.98)[0.976,0]; NEURAL_SPAM_MEDIUM(0.96)[0.964,0]; ASN(0.00)[asn:7514, ipnet:2001:2f0::/32, country:JP] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 03:31:55 -0000 ----Security_Multipart(Wed_Mar_18_12_29_24_2020_910)-- Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Brooks Davis wrote in <202003171817.02HIHWdY035423@repo.freebsd.org>: br> Author: brooks br> Date: Tue Mar 17 18:17:32 2020 br> New Revision: 359046 br> URL: https://svnweb.freebsd.org/changeset/base/359046 br> br> Log: br> Support SUBDIR.${MK_FOO}.${MK_BAR} expresssions. br> br> This allows simplification of Makefiles where some SUBDIR entries depend br> on two things (e.g. something that depends on C++ and some other knob). Just my two cents, but SUBDIR.${MK_FOO:M${MK_BAR}:M${MK_BAZ}}= dir should do the trick. I am not sure how many variables we need to support in practice, adding ".yes.yes..." in bsd.subdir.mk looks less flexible to me. br> Discussed with: imp, jhb br> Obtained from: CheriBSD br> MFC after: 3 days br> Sponsored by: DARPA br> br> Modified: br> head/share/mk/bsd.subdir.mk br> br> Modified: head/share/mk/bsd.subdir.mk br> ============================================================================== br> --- head/share/mk/bsd.subdir.mk Tue Mar 17 17:28:12 2020 (r359045) br> +++ head/share/mk/bsd.subdir.mk Tue Mar 17 18:17:32 2020 (r359046) br> @@ -16,8 +16,8 @@ br> # br> # SUBDIR A list of subdirectories that should be built as well. br> # Each of the targets will execute the same target in the br> -# subdirectories. SUBDIR.yes is automatically appended br> -# to this list. br> +# subdirectories. SUBDIR.yes and SUBDIR.yes.yes are br> +# automatically appended to this list. br> # br> # +++ targets +++ br> # br> @@ -122,8 +122,8 @@ install: beforeinstall realinstall afterinstall br> # SUBDIR recursing may be disabled for MK_DIRDEPS_BUILD br> .if !target(_SUBDIR) br> br> -.if defined(SUBDIR) || defined(SUBDIR.yes) br> -SUBDIR:=${SUBDIR} ${SUBDIR.yes} br> +.if defined(SUBDIR) || defined(SUBDIR.yes) || defined(SUBDIR.yes.yes) br> +SUBDIR:=${SUBDIR} ${SUBDIR.yes} ${SUBDIR.yes.yes} br> SUBDIR:=${SUBDIR:u} br> .endif br> br> ----Security_Multipart(Wed_Mar_18_12_29_24_2020_910)-- Content-Type: application/pgp-signature Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iMgEABMKAC4WIQRsDSNTJ8+Ax5Ae/dLbsH3Gbx9zfwUCXnGVlBAcaHJzQGZyZWVi c2Qub3JnAAoJENuwfcZvH3N/ErgCCJVGV251RB+YFoVbyGnICsWOiB+h5NfcrdZy G3Q+mbCfqKtew0OCwdwtaYJ1QBNwev7ApEUwEtTYJNKLh0aFGphKAgYvkhvus6YD v812NjNJrkK6cixsh8odnUh0oh/S937UKSjWwG2hwn9HxPIE15YA5b8Y3m6rVouh JA1MXQ9v8hbX7g== =jsiK -----END PGP SIGNATURE----- ----Security_Multipart(Wed_Mar_18_12_29_24_2020_910)---- From owner-svn-src-head@freebsd.org Wed Mar 18 05:28:37 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id CA5EF27CD50; Wed, 18 Mar 2020 05:28:37 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48hz913BHTz4vRB; Wed, 18 Mar 2020 05:28:37 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 039DD1D195; Wed, 18 Mar 2020 05:28:37 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02I5SaIQ040661; Wed, 18 Mar 2020 05:28:36 GMT (envelope-from jkim@FreeBSD.org) Received: (from jkim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02I5Sais040660; Wed, 18 Mar 2020 05:28:36 GMT (envelope-from jkim@FreeBSD.org) Message-Id: <202003180528.02I5Sais040660@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jkim set sender to jkim@FreeBSD.org using -f From: Jung-uk Kim Date: Wed, 18 Mar 2020 05:28:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359066 - head X-SVN-Group: head X-SVN-Commit-Author: jkim X-SVN-Commit-Paths: head X-SVN-Commit-Revision: 359066 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 05:28:37 -0000 Author: jkim Date: Wed Mar 18 05:28:36 2020 New Revision: 359066 URL: https://svnweb.freebsd.org/changeset/base/359066 Log: Remove wrong entries added in the previous commit. Pointyhat to: jkim Modified: head/ObsoleteFiles.inc Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Wed Mar 18 03:17:15 2020 (r359065) +++ head/ObsoleteFiles.inc Wed Mar 18 05:28:36 2020 (r359066) @@ -36,12 +36,6 @@ # xargs -n1 | sort | uniq -d; # done -# 20200317: OpenSSL 1.1.1e import -OLD_FILES+=usr/share/openssl/man/man3/EVP_PKEY_security_bits.3.gz -OLD_FILES+=usr/share/openssl/man/man3/EVP_PKEY_size.3.gz -OLD_FILES+=usr/share/openssl/man/man3/X509_LOOKUP_get_method_data.3.gz -OLD_FILES+=usr/share/openssl/man/man3/X509_LOOKUP_get_store.3.gz -OLD_FILES+=usr/share/openssl/man/man3/X509_LOOKUP_set_method_data.3.gz # 20200310: new clang import which bumps version from 9.0.1 to 10.0.0. OLD_FILES+=usr/lib/clang/9.0.1/include/cuda_wrappers/algorithm OLD_FILES+=usr/lib/clang/9.0.1/include/cuda_wrappers/complex From owner-svn-src-head@freebsd.org Wed Mar 18 08:00:46 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id EA9A827FE64; Wed, 18 Mar 2020 08:00:46 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48j2XZ5ykCz3KhX; Wed, 18 Mar 2020 08:00:46 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C81AC1ED14; Wed, 18 Mar 2020 08:00:46 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02I80ktL036534; Wed, 18 Mar 2020 08:00:46 GMT (envelope-from hrs@FreeBSD.org) Received: (from hrs@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02I80kgM036533; Wed, 18 Mar 2020 08:00:46 GMT (envelope-from hrs@FreeBSD.org) Message-Id: <202003180800.02I80kgM036533@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hrs set sender to hrs@FreeBSD.org using -f From: Hiroki Sato Date: Wed, 18 Mar 2020 08:00:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359067 - head/share/examples/ipfw X-SVN-Group: head X-SVN-Commit-Author: hrs X-SVN-Commit-Paths: head/share/examples/ipfw X-SVN-Commit-Revision: 359067 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 08:00:47 -0000 Author: hrs Date: Wed Mar 18 08:00:46 2020 New Revision: 359067 URL: https://svnweb.freebsd.org/changeset/base/359067 Log: -F is GNU diff specific, not implemented in BSD diff. Reported by: kouya@ryuhoku.jp MFC after: 3 days Modified: head/share/examples/ipfw/change_rules.sh Modified: head/share/examples/ipfw/change_rules.sh ============================================================================== --- head/share/examples/ipfw/change_rules.sh Wed Mar 18 05:28:36 2020 (r359066) +++ head/share/examples/ipfw/change_rules.sh Wed Mar 18 08:00:46 2020 (r359067) @@ -149,7 +149,7 @@ cat < Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 35B0D258493; Wed, 18 Mar 2020 08:17:26 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48j2vn72Hfz4N2b; Wed, 18 Mar 2020 08:17:25 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 97D5D1F08C; Wed, 18 Mar 2020 08:17:25 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02I8HPhu049387; Wed, 18 Mar 2020 08:17:25 GMT (envelope-from hrs@FreeBSD.org) Received: (from hrs@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02I8HPFc049385; Wed, 18 Mar 2020 08:17:25 GMT (envelope-from hrs@FreeBSD.org) Message-Id: <202003180817.02I8HPFc049385@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hrs set sender to hrs@FreeBSD.org using -f From: Hiroki Sato Date: Wed, 18 Mar 2020 08:17:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359068 - in head: . libexec/rc/rc.d X-SVN-Group: head X-SVN-Commit-Author: hrs X-SVN-Commit-Paths: in head: . libexec/rc/rc.d X-SVN-Commit-Revision: 359068 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 08:17:26 -0000 Author: hrs Date: Wed Mar 18 08:17:24 2020 New Revision: 359068 URL: https://svnweb.freebsd.org/changeset/base/359068 Log: Remove /etc/host.conf, which was automatically generated from nsswitch.conf for backward compatibility. This file was used over 19 years ago, before introducing nsdispatch() in the name-service lookup APIs. MFC after: 3 days Deleted: head/libexec/rc/rc.d/nsswitch Modified: head/ObsoleteFiles.inc head/libexec/rc/rc.d/Makefile Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Wed Mar 18 08:00:46 2020 (r359067) +++ head/ObsoleteFiles.inc Wed Mar 18 08:17:24 2020 (r359068) @@ -36,6 +36,10 @@ # xargs -n1 | sort | uniq -d; # done +# 20200318: host.conf was deprecated a long time ago. +OLD_FILES+=etc/host.conf +OLD_FILES+=etc/rc.d/nsswitch + # 20200310: new clang import which bumps version from 9.0.1 to 10.0.0. OLD_FILES+=usr/lib/clang/9.0.1/include/cuda_wrappers/algorithm OLD_FILES+=usr/lib/clang/9.0.1/include/cuda_wrappers/complex Modified: head/libexec/rc/rc.d/Makefile ============================================================================== --- head/libexec/rc/rc.d/Makefile Wed Mar 18 08:00:46 2020 (r359067) +++ head/libexec/rc/rc.d/Makefile Wed Mar 18 08:17:24 2020 (r359068) @@ -74,7 +74,6 @@ CONFS= DAEMON \ nfsuserd \ nisdomain \ ${_nscd} \ - nsswitch \ ntpdate \ ${_opensm} \ os-release \ From owner-svn-src-head@freebsd.org Wed Mar 18 13:09:48 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id D123C25F974; Wed, 18 Mar 2020 13:09:48 +0000 (UTC) (envelope-from luporl@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48j9P848Lpz4HHr; Wed, 18 Mar 2020 13:09:48 +0000 (UTC) (envelope-from luporl@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6226D225B9; Wed, 18 Mar 2020 13:09:48 +0000 (UTC) (envelope-from luporl@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02ID9m1e023124; Wed, 18 Mar 2020 13:09:48 GMT (envelope-from luporl@FreeBSD.org) Received: (from luporl@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02ID9me8023122; Wed, 18 Mar 2020 13:09:48 GMT (envelope-from luporl@FreeBSD.org) Message-Id: <202003181309.02ID9me8023122@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: luporl set sender to luporl@FreeBSD.org using -f From: Leandro Lupori Date: Wed, 18 Mar 2020 13:09:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359069 - in head/libexec/rc: . rc.d X-SVN-Group: head X-SVN-Commit-Author: luporl X-SVN-Commit-Paths: in head/libexec/rc: . rc.d X-SVN-Commit-Revision: 359069 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 13:09:48 -0000 Author: luporl Date: Wed Mar 18 13:09:47 2020 New Revision: 359069 URL: https://svnweb.freebsd.org/changeset/base/359069 Log: Add fsck_flags config option On UFS with SU+J, sometimes fsck's default recovery from journal marks the filesystem as clean but some errors remain. With SU only, default fsck in preen mode sometimes thinks all errors have been fixed but some still remain. To address the issues above, this change adds a new config option: fsck_flags. By default it's set to -p, but the user may change it to -y or -f -y, for instance, to force a full fsck after a system crash. Submitted by: jhibbits@ (original version) Reviewed by: mckusick Differential Revision: https://reviews.freebsd.org/D24087 Modified: head/libexec/rc/rc.conf head/libexec/rc/rc.d/fsck Modified: head/libexec/rc/rc.conf ============================================================================== --- head/libexec/rc/rc.conf Wed Mar 18 08:17:24 2020 (r359068) +++ head/libexec/rc/rc.conf Wed Mar 18 13:09:47 2020 (r359069) @@ -101,6 +101,7 @@ geli_autodetach="YES" # Automatically detach on last c root_rw_mount="YES" # Set to NO to inhibit remounting root read-write. root_hold_delay="30" # Time to wait for root mount hold release. +fsck_flags="-p" # May be changed to -f (or -f -y) to force a full fsck fsck_y_enable="NO" # Set to YES to do fsck -y if the initial preen fails. fsck_y_flags="-T ffs:-R -T ufs:-R" # Additional flags for fsck -y background_fsck="YES" # Attempt to run fsck in the background where possible. Modified: head/libexec/rc/rc.d/fsck ============================================================================== --- head/libexec/rc/rc.d/fsck Wed Mar 18 08:17:24 2020 (r359068) +++ head/libexec/rc/rc.d/fsck Wed Mar 18 13:09:47 2020 (r359069) @@ -25,10 +25,11 @@ fsck_start() trap : 3 check_startmsgs && echo "Starting file system checks:" + # Background fsck can only be run with -p if checkyesno background_fsck; then fsck -F -p else - fsck -p + fsck ${fsck_flags} fi err=$? @@ -37,10 +38,11 @@ fsck_start() "available; retrying" root_hold_wait check_startmsgs && echo "Restarting file system checks:" + # Background fsck can only be run with -p if checkyesno background_fsck; then fsck -F -p else - fsck -p + fsck ${fsck_flags} fi err=$? fi From owner-svn-src-head@freebsd.org Wed Mar 18 14:16:15 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 28DA226157C; Wed, 18 Mar 2020 14:16:15 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jBsq0223z3BxS; Wed, 18 Mar 2020 14:16:15 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D346623282; Wed, 18 Mar 2020 14:16:14 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IEGE0c064494; Wed, 18 Mar 2020 14:16:14 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IEGEgn064493; Wed, 18 Mar 2020 14:16:14 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003181416.02IEGEgn064493@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Wed, 18 Mar 2020 14:16:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359070 - head/sys/dev/usb/net X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/sys/dev/usb/net X-SVN-Commit-Revision: 359070 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 14:16:15 -0000 Author: emaste Date: Wed Mar 18 14:16:14 2020 New Revision: 359070 URL: https://svnweb.freebsd.org/changeset/base/359070 Log: if_muge: use C99 bool for boolean vars Modified: head/sys/dev/usb/net/if_muge.c Modified: head/sys/dev/usb/net/if_muge.c ============================================================================== --- head/sys/dev/usb/net/if_muge.c Wed Mar 18 13:09:47 2020 (r359069) +++ head/sys/dev/usb/net/if_muge.c Wed Mar 18 14:16:14 2020 (r359070) @@ -389,9 +389,10 @@ lan78xx_eeprom_read_raw(struct muge_softc *sc, uint16_ { usb_ticks_t start_ticks; const usb_ticks_t max_ticks = USB_MS_TO_TICKS(1000); - int err, locked; + int err; uint32_t val, saved; uint16_t i; + bool locked; locked = mtx_owned(&sc->sc_mtx); /* XXX */ if (!locked) @@ -483,9 +484,10 @@ static int lan78xx_otp_read_raw(struct muge_softc *sc, uint16_t off, uint8_t *buf, uint16_t buflen) { - int locked, err; + int err; uint32_t val; uint16_t i; + bool locked; locked = mtx_owned(&sc->sc_mtx); if (!locked) MUGE_LOCK(sc); @@ -659,8 +661,8 @@ static int lan78xx_miibus_readreg(device_t dev, int phy, int reg) { struct muge_softc *sc = device_get_softc(dev); - int locked; uint32_t addr, val; + bool locked; val = 0; locked = mtx_owned(&sc->sc_mtx); @@ -712,8 +714,8 @@ static int lan78xx_miibus_writereg(device_t dev, int phy, int reg, int val) { struct muge_softc *sc = device_get_softc(dev); - int locked; uint32_t addr; + bool locked; if (sc->sc_phyno != phy) return (0); @@ -760,10 +762,10 @@ lan78xx_miibus_statchg(device_t dev) struct muge_softc *sc = device_get_softc(dev); struct mii_data *mii = uether_getmii(&sc->sc_ue); struct ifnet *ifp; - int locked; int err; uint32_t flow = 0; uint32_t fct_flow = 0; + bool locked; locked = mtx_owned(&sc->sc_mtx); if (!locked) From owner-svn-src-head@freebsd.org Wed Mar 18 15:02:10 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 2BE25262726; Wed, 18 Mar 2020 15:02:10 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jCtn5pW4z4YkZ; Wed, 18 Mar 2020 15:02:09 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B9F7F23BAA; Wed, 18 Mar 2020 15:02:09 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IF29Ek094285; Wed, 18 Mar 2020 15:02:09 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IF294q094284; Wed, 18 Mar 2020 15:02:09 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202003181502.02IF294q094284@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Wed, 18 Mar 2020 15:02:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359071 - head/usr.bin/posixshmcontrol X-SVN-Group: head X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: head/usr.bin/posixshmcontrol X-SVN-Commit-Revision: 359071 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 15:02:10 -0000 Author: 0mp (doc,ports committer) Date: Wed Mar 18 15:02:09 2020 New Revision: 359071 URL: https://svnweb.freebsd.org/changeset/base/359071 Log: Document that posixshmcontrol first appeared in 12.1 Also while here, I am addressing some linting issues. PR: 243132 Submitted by: Noah Altunian Approved by: bcr (mentor) MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D24112 Modified: head/usr.bin/posixshmcontrol/posixshmcontrol.1 Modified: head/usr.bin/posixshmcontrol/posixshmcontrol.1 ============================================================================== --- head/usr.bin/posixshmcontrol/posixshmcontrol.1 Wed Mar 18 14:16:14 2020 (r359070) +++ head/usr.bin/posixshmcontrol/posixshmcontrol.1 Wed Mar 18 15:02:09 2020 (r359071) @@ -27,7 +27,7 @@ .\" .\" $FreeBSD$ .\" -.Dd May 30, 2019 +.Dd March 18, 2020 .Dt POSIXSHMCONTROL 1 .Os .Sh NAME @@ -99,7 +99,7 @@ Argument to the .Fl s option specifies new length. The human-friendly 'k', 'm', 'g' suffixes can be used, see -.Xr expand_number 3. +.Xr expand_number 3 . If the option is not specified, assumed length is zero. .El .Pp @@ -143,10 +143,12 @@ and then enlarge it to 1M, use the sequence of command The .Nm command appeared in -.Fx 13.0 . +.Fx 12.1 . .Sh AUTHORS The .Nm command and this manual page were written by .An Konstantin Belousov Aq Mt kib@freebsd.org -under sponsorship from The FreeBSD Foundation. +under sponsorship from The +.Fx +Foundation. From owner-svn-src-head@freebsd.org Wed Mar 18 16:21:12 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7ECA5265328; Wed, 18 Mar 2020 16:21:12 +0000 (UTC) (envelope-from freqlabs@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jFf01nn6z4WM8; Wed, 18 Mar 2020 16:21:12 +0000 (UTC) (envelope-from freqlabs@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 00BE824930; Wed, 18 Mar 2020 16:21:12 +0000 (UTC) (envelope-from freqlabs@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IGLBvo037618; Wed, 18 Mar 2020 16:21:11 GMT (envelope-from freqlabs@FreeBSD.org) Received: (from freqlabs@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IGLBRv037617; Wed, 18 Mar 2020 16:21:11 GMT (envelope-from freqlabs@FreeBSD.org) Message-Id: <202003181621.02IGLBRv037617@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: freqlabs set sender to freqlabs@FreeBSD.org using -f From: Ryan Moeller Date: Wed, 18 Mar 2020 16:21:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359072 - head/stand/lua X-SVN-Group: head X-SVN-Commit-Author: freqlabs X-SVN-Commit-Paths: head/stand/lua X-SVN-Commit-Revision: 359072 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 16:21:12 -0000 Author: freqlabs Date: Wed Mar 18 16:21:11 2020 New Revision: 359072 URL: https://svnweb.freebsd.org/changeset/base/359072 Log: loader: Add a "kernel.loaded" hook This hook can be useful, for example to run a local function to choose different modules to load when a user has picked a different kernel from the menu. Reviewed by: kevans Approved by: mav (mentor) MFC after: 1 week Sponsored by: iXsystems, Inc. Differential Revision: https://reviews.freebsd.org/D24115 Modified: head/stand/lua/config.lua Modified: head/stand/lua/config.lua ============================================================================== --- head/stand/lua/config.lua Wed Mar 18 15:02:09 2020 (r359071) +++ head/stand/lua/config.lua Wed Mar 18 16:21:11 2020 (r359072) @@ -623,7 +623,7 @@ end function config.loadelf() local xen_kernel = loader.getenv('xen_kernel') local kernel = config.kernel_selected or config.kernel_loaded - local loaded, status + local status if xen_kernel ~= nil then print(MSG_XENKERNLOADING) @@ -633,11 +633,10 @@ function config.loadelf() end end print(MSG_KERNLOADING) - loaded = config.loadKernel(kernel) - - if not loaded then + if not config.loadKernel(kernel) then return false end + hook.runAll("kernel.loaded") print(MSG_MODLOADING) status = loadModule(modules, not config.verbose) From owner-svn-src-head@freebsd.org Wed Mar 18 16:40:24 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id D3E80265ABC for ; Wed, 18 Mar 2020 16:40:24 +0000 (UTC) (envelope-from brigadir15@gmail.com) Received: from mail-lf1-x143.google.com (mail-lf1-x143.google.com [IPv6:2a00:1450:4864:20::143]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jG476N6Mz4LWf for ; Wed, 18 Mar 2020 16:40:23 +0000 (UTC) (envelope-from brigadir15@gmail.com) Received: by mail-lf1-x143.google.com with SMTP id a28so9135111lfr.13 for ; Wed, 18 Mar 2020 09:40:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=zcMoG5SoQahuJXSm7g8N5b9udySZW5gdI+5/OMeMUac=; b=hx7zfdjsjZ8jlgDUoaQP+fAk0Y27OBcH0QxNyh47BpWpD61mbP+TLKkXI+rQg+q7HZ JYJJVYmbOMKaUwRR10jUbTKP2+WQ3igLs//PyOoV/7D2Wdhqmk4fQTTmsima9Pg3QzSF hlsCD86NNjBbK8ny74FnipqQUiB5cPMBqCU3dX/jC8isHTjFRcrhiWDBgaRGgChDzFHO Z/fvy9JRHjj1RfLdOBjuDR+OayxpRa7ft2SvaRGtogJ5H3DL2U7Oh+DhVTN5IgGDvJSe sRU/KoQmUrZsTJWTa3dXeDUI5/j9ClbUBCFDV6wH7g29GzhlRtXxtVSs/9FpQM0P+5Ww jrUQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=zcMoG5SoQahuJXSm7g8N5b9udySZW5gdI+5/OMeMUac=; b=az6slZnINZjUYHJuWUX+WzVHn9XXWoWWc9mGh+eNps4U2jzEGhPcuESZqr22RdmEIU JwzaR+Ax4sOBcvEegki9f8TlppBCI2lYY8PydcOktIDKB1vyvZhywnOZDi3TxtYt7n4k DRt+G+09IYOt078pTKBxKoKA45VwRvUZ9Y7ENnWrbpFsq2GwD8TDxcv7uPg4OSSiUS9M Ne9AxalyNMzfqx+Tppu7AmzHUm3zOvJJBfW/heT1QjpjQoMZCQi2UY8k5+WdXuTKa+mx 0ILsdpoYEI7vuotGGl8K94TS5QG4HGQb52bH+1q91yE1UJPGfKYL8IsFWe+g6/w723iV 2J1Q== X-Gm-Message-State: ANhLgQ0WISUavfIDc8omWEp+hko+ThCm8iNAutAIP8oylp+XeC9QUr3N quyhBBKZu+Ncn7hxU96deMI4LJFrYFM= X-Google-Smtp-Source: ADFU+vvEak/FjTHSLwVuITFPG0oaP5M9/BB9amyGHtkgWpJ5vpMzS10aR/teCifrnhjIfbqu750NSg== X-Received: by 2002:ac2:4565:: with SMTP id k5mr3453276lfm.8.1584549621156; Wed, 18 Mar 2020 09:40:21 -0700 (PDT) Received: from [192.168.1.3] ([46.48.69.183]) by smtp.gmail.com with ESMTPSA id i18sm5078571lfe.15.2020.03.18.09.40.19 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 18 Mar 2020 09:40:20 -0700 (PDT) Subject: Re: svn commit: r358989 - in head/stand/efi: libefi loader loader/arch/arm loader/arch/arm64 To: junchoon@dec.sakura.ne.jp, Toomas Soome Cc: svn-src-head@freebsd.org References: <20200316001745.07df62f72d647b924b657d86@dec.sakura.ne.jp> <746EE981-536F-49AD-9B76-F9F103ECB1F9@me.com> <20200317211614.bbe1b18a32d7863941fffbe8@dec.sakura.ne.jp> From: Ruslan Garipov Message-ID: <55b1f91b-6157-bfee-cd74-124ed50bc663@gmail.com> Date: Wed, 18 Mar 2020 21:40:17 +0500 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <20200317211614.bbe1b18a32d7863941fffbe8@dec.sakura.ne.jp> Content-Type: text/plain; charset=UTF-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 48jG476N6Mz4LWf X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20161025 header.b=hx7zfdjs; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of brigadir15@gmail.com designates 2a00:1450:4864:20::143 as permitted sender) smtp.mailfrom=brigadir15@gmail.com X-Spamd-Result: default: False [-2.84 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36]; FREEMAIL_FROM(0.00)[gmail.com]; RCVD_COUNT_THREE(0.00)[3]; DKIM_TRACE(0.00)[gmail.com:+]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; FROM_EQ_ENVFROM(0.00)[]; IP_SCORE(0.00)[ip: (2.63), ipnet: 2a00:1450::/32(-2.39), asn: 15169(-1.65), country: US(-0.05)]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]; MID_RHS_MATCH_FROM(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.84)[-0.844,0]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[svn-src-head@freebsd.org]; IP_SCORE_FREEMAIL(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[3.4.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.5.4.1.0.0.a.2.list.dnswl.org : 127.0.5.0]; RCVD_TLS_ALL(0.00)[] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 16:40:24 -0000 On 3/17/2020 5:16 PM, Tomoaki AOKI wrote: > Hi! Thanks for your respond. > > Unfortunately, no. > I'm running on ThinkPad P52, which has no com connector installed. > No USB serial interface connected. > > `efi-show -g global -v ConOut` on loader prompt shows > > global NV,BS,RS ConOut = > PciRoot(0,0)/Pci((0x1,oxo)/Pci(0x0,0x0)/AcpiAdr(0x80010100) > > Moreover, my previous idea didn't help. > > Neither > console="vidconsole" > console="eficonsole" > console="efi_console" > nor > console="efi" > in /boot/loader.conf works. > > Defining / undefining TERM_EMU on build are untested. > > Is there any setting for /boot/loader.conf to control the behavior? > > > Regards. > > > On Mon, 16 Mar 2020 08:26:56 +0200 > Toomas Soome wrote: > >> Hi! >> >> This means, your system has UART serial device 〓 you can check this from loader prompt: efi-show -g global -v ConOut or with efivar from running system. This w ould trigger efi console driver to use TERM_EMU, which can be turned off by user and doing that would cause ESC sequences to be passed directly to console. Might that be true in your case? >> >> rgds, >> toomas >> >>> On 15. Mar 2020, at 17:17, Tomoaki AOKI wrote: >>> >>> Hi. >>> >>> This broke loader menu display on efifb. At least on amd64. >>> ESC sequences without ESC character are shown. >>> Key input (at least 1, 2 and enter) works OK. >>> I suspect outputs for SIO is sent to efifb and ESC codes are ignored. >>> >>> Reverting this fixes the issue. I got the same issue with loader menu when was upgrading from r358827 to r359028 (x86-64). But unfortunately the broken menu is just a part of my problem. The real pain is that a FreeBSD 13.0-CURRENT system hosted by VMware ESXi or Workstation doesn't boot anymore after r358989. An ugly workaround[1] (exiting from the loader menu into the loader prompt, running ls or show, scrolling the result down and then executing boot) I found some time ago doesn't work anymore. After running boot/boot -s/selecting menu item, a hypervisor just shuts session down with the following message: ``The firmware encountered an unexpected exception. The virtual machine cannot boot.'' The virtual guests don't have any UART (even USB) serial devices in their settings. efi-show prints result similar to what Tomoaki got: OK efi-show -g global -v CounOut global NV,BS,RS ConOut = PciRoot(0x0)/Pci(0x2,0x0)/AcpiAdr(0x80014310) Undefining TERM_EMU doesn't help. I had completely removed CFLAGS assignment with TERM_EMU from stand/efi/libefi/Makefile and rebuilt kernel/world -- nothing changed. I don't define TERM_EMU in my make.conf or/and src.conf. Reverting this revision fix booting (and menu, of course). FreeBSD on physical hardware boots just fine with this revision, but has corrupted loader menu. Toomas, please help us to fix this. I can live with the broken menu, but I don't want to revert this revision every time I will upgrade my virtual machines after r359028 now. [1] https://old.reddit.com/r/freebsd/comments/drxqlm/failed_to_do_efi_boot_on_a_vmware_virtual_machine/f6om6p2/ >>> >>> Not tried (not enough time for now as I'm mainly using stable/12), >>> but possibly calling efi_cons_probe() from efi_cons_init() would be >>> needed, as ome codes are moved from the latter to the former. >>> >>> >>>> Author: tsoome >>>> Date: Sat Mar 14 06:36:03 2020 >>>> New Revision: 358989 >>>> URL: https://svnweb.freebsd.org/changeset/base/358989 >>>> >>>> Log: >>>> loader: add comconsole implementation on top of SIO protocol >>>> >>>> Provide comconsole on top of SIO for arm platforms (x86 does use bios >>> version). >>>> >>>> Added: >>>> head/stand/efi/loader/efiserialio.c (contents, props changed) >>>> Modified: >>>> head/stand/efi/libefi/efi_console.c >>>> head/stand/efi/loader/arch/arm/Makefile.inc >>>> head/stand/efi/loader/arch/arm64/Makefile.inc >>>> head/stand/efi/loader/conf.c >>>> head/stand/efi/loader/main.c >>>> >>>> Modified: head/stand/efi/libefi/efi_console.c >>>> ============================================================================== >>>> --- head/stand/efi/libefi/efi_console.c Sat Mar 14 05:57:22 >>> 2020 (r358988) >>>> +++ head/stand/efi/libefi/efi_console.c >>> Sat Mar 14 06:36:03 2020 (r358989) >>>> @@ -377,9 +377,22 @@ efi_cons_respond(void *s __unused, const void *buf __u >>>> { >>>> } >>>> >>>> +/* >>>> + * Set up conin/conout/coninex to make sure we have input ready. >>>> + */ >>>> static void >>>> efi_cons_probe(struct console *cp) >>>> { >>>> + EFI_STATUS status; >>>> + >>>> + conout = ST->ConOut; >>>> + conin = ST->ConIn; >>>> + >>>> + status = BS->OpenProtocol(ST->ConsoleInHandle, >>> &simple_input_ex_guid, >>>> + (void **)&coninex, IH, NULL, >>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); >>>> + if (status != EFI_SUCCESS) >>>> + coninex = NULL; >>>> + >>>> cp->c_flags |= C_PRESENTIN | C_PRESENTOUT; >>>> } >>>> >>>> @@ -889,15 +902,7 @@ efi_cons_init(int arg) >>>> if (conin != NULL) >>>> return (0); >>>> >>>> - conout = ST->ConOut; >>>> - conin = ST->ConIn; >>>> - >>>> conout->EnableCursor(conout, TRUE); >>>> - status = BS->OpenProtocol(ST->ConsoleInHandle, >>> &simple_input_ex_guid, >>>> - (void **)&coninex, IH, NULL, >>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); >>>> - if (status != EFI_SUCCESS) >>>> - coninex = NULL; >>>> - >>>> if (efi_cons_update_mode()) >>>> return (0); >>>> >>>> >>>> Modified: head/stand/efi/loader/arch/arm/Makefile.inc >>>> ============================================================================== >>>> --- head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 >>> 05:57:22 2020 (r358988) >>>> +++ head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 06:36:03 >>> 2020 (r358989) >>>> @@ -1,6 +1,7 @@ >>>> # $FreeBSD$ >>>> >>>> SRCS+= exec.c \ >>>> + efiserialio.c \ >>>> start.S >>>> >>>> HAVE_FDT=yes >>> >>> (Snip) >>> >>>> @@ -930,7 +936,6 @@ main(int argc, CHAR16 *argv[]) >>>> if (!has_kbd && (howto & RB_PROBE)) >>>> howto |= RB_SERIAL | RB_MULTIPLE; >>>> howto &= ~RB_PROBE; >>>> - uhowto = parse_uefi_con_out(); >>>> >>>> /* >>>> * Read additional environment variables from the boot device's >>> >>> -- >>> Tomoaki AOKI >> >> > > From owner-svn-src-head@freebsd.org Wed Mar 18 16:53:00 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 705C7266444; Wed, 18 Mar 2020 16:53:00 +0000 (UTC) (envelope-from brooks@spindle.one-eyed-alien.net) Received: from spindle.one-eyed-alien.net (spindle.one-eyed-alien.net [199.48.129.229]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48jGLh0gqJz3KpM; Wed, 18 Mar 2020 16:52:59 +0000 (UTC) (envelope-from brooks@spindle.one-eyed-alien.net) Received: by spindle.one-eyed-alien.net (Postfix, from userid 3001) id E2B123C0199; Wed, 18 Mar 2020 16:52:52 +0000 (UTC) Date: Wed, 18 Mar 2020 16:52:52 +0000 From: Brooks Davis To: Hiroki Sato Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r359046 - head/share/mk Message-ID: <20200318165252.GB5399@spindle.one-eyed-alien.net> References: <202003171817.02HIHWdY035423@repo.freebsd.org> <20200318.122924.1446699160859237014.hrs@FreeBSD.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="gatW/ieO32f1wygP" Content-Disposition: inline In-Reply-To: <20200318.122924.1446699160859237014.hrs@FreeBSD.org> User-Agent: Mutt/1.9.4 (2018-02-28) X-Rspamd-Queue-Id: 48jGLh0gqJz3KpM X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-2.84 / 15.00]; NEURAL_SPAM_LONG(0.70)[0.700,0]; REPLY(-4.00)[]; NEURAL_SPAM_MEDIUM(0.46)[0.457,0] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 16:53:00 -0000 --gatW/ieO32f1wygP Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Mar 18, 2020 at 12:29:24PM +0900, Hiroki Sato wrote: > Brooks Davis wrote > in <202003171817.02HIHWdY035423@repo.freebsd.org>: >=20 > br> Author: brooks > br> Date: Tue Mar 17 18:17:32 2020 > br> New Revision: 359046 > br> URL: https://svnweb.freebsd.org/changeset/base/359046 > br> > br> Log: > br> Support SUBDIR.${MK_FOO}.${MK_BAR} expresssions. > br> > br> This allows simplification of Makefiles where some SUBDIR entries d= epend > br> on two things (e.g. something that depends on C++ and some other kn= ob). >=20 > Just my two cents, but SUBDIR.${MK_FOO:M${MK_BAR}:M${MK_BAZ}}=3D dir > should do the trick. I am not sure how many variables we need to > support in practice, adding ".yes.yes..." in bsd.subdir.mk looks less > flexible to me. IMO that's lousy from a readability perspective. It's remotely conceivable that supporting three variables might make sense, but more seems vanishingly unlikely and even so, it's trivial to add more cases. -- Brooks --gatW/ieO32f1wygP Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEcBAEBAgAGBQJeclHkAAoJEKzQXbSebgfAEvAH+waQwS2gxFU3dm8cnEUXxf9e euWjpEqFiDP3T46gevnUKeIGlCJuiEZM2K++OdD0wtTv25BpSBVi/9IZztu1CdXN +N2nGht6xPTRXeK9GsLw5APEZj1m/NTql0ozVWX9GKmui8EcMGEmnY7S4kr4Gz73 9n/TdtS/BgpQHxaF9aoVCvqmRPvntqj6a5PtR4wxd4+JNsRbsLZ9shBGiL66EIts S8R0ZAosYr4EKS0fhKp5xQueup2LhSVXKEw8b48RtjAyZ3eLUZBBUP3sNSoW2UXf 29ipmeoXTcLQ54p5MutOGcEx5ec4af+pivrgslbli0cClMBadeFxKDpCNW6QliM= =aEng -----END PGP SIGNATURE----- --gatW/ieO32f1wygP-- From owner-svn-src-head@freebsd.org Wed Mar 18 17:01:04 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 462D22668F4; Wed, 18 Mar 2020 17:01:04 +0000 (UTC) (envelope-from freqlabs@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jGWz5mPqz46NB; Wed, 18 Mar 2020 17:01:03 +0000 (UTC) (envelope-from freqlabs@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C119F251A2; Wed, 18 Mar 2020 17:01:03 +0000 (UTC) (envelope-from freqlabs@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IH132V061721; Wed, 18 Mar 2020 17:01:03 GMT (envelope-from freqlabs@FreeBSD.org) Received: (from freqlabs@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IH13RC061720; Wed, 18 Mar 2020 17:01:03 GMT (envelope-from freqlabs@FreeBSD.org) Message-Id: <202003181701.02IH13RC061720@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: freqlabs set sender to freqlabs@FreeBSD.org using -f From: Ryan Moeller Date: Wed, 18 Mar 2020 17:01:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359073 - head/stand/lua X-SVN-Group: head X-SVN-Commit-Author: freqlabs X-SVN-Commit-Paths: head/stand/lua X-SVN-Commit-Revision: 359073 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 17:01:04 -0000 Author: freqlabs Date: Wed Mar 18 17:01:03 2020 New Revision: 359073 URL: https://svnweb.freebsd.org/changeset/base/359073 Log: Fixup line lost from previous commit (r359072) Reviewed by: kevans Approved by: mav (mentor) MFC after: 1 week Sponsored by: iXsystems, Inc. Differential Revision: https://reviews.freebsd.org/D24115 Modified: head/stand/lua/config.lua Modified: head/stand/lua/config.lua ============================================================================== --- head/stand/lua/config.lua Wed Mar 18 16:21:11 2020 (r359072) +++ head/stand/lua/config.lua Wed Mar 18 17:01:03 2020 (r359073) @@ -646,5 +646,6 @@ end hook.registerType("config.loaded") hook.registerType("config.reloaded") +hook.registerType("kernel.loaded") hook.registerType("modules.loaded") return config From owner-svn-src-head@freebsd.org Wed Mar 18 17:29:54 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 532522671E4 for ; Wed, 18 Mar 2020 17:29:54 +0000 (UTC) (envelope-from tsoome@me.com) Received: from mr85p00im-zteg06021601.me.com (mr85p00im-zteg06021601.me.com [17.58.23.187]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48jH9D3F9Yz471F for ; Wed, 18 Mar 2020 17:29:52 +0000 (UTC) (envelope-from tsoome@me.com) Received: from nazgul.lan (148-52-235-80.sta.estpak.ee [80.235.52.148]) by mr85p00im-zteg06021601.me.com (Postfix) with ESMTPSA id B6D58400531; Wed, 18 Mar 2020 17:29:48 +0000 (UTC) From: Toomas Soome Message-Id: Mime-Version: 1.0 (Mac OS X Mail 13.0 \(3608.60.0.2.5\)) Subject: Re: svn commit: r358989 - in head/stand/efi: libefi loader loader/arch/arm loader/arch/arm64 Date: Wed, 18 Mar 2020 19:29:45 +0200 In-Reply-To: <55b1f91b-6157-bfee-cd74-124ed50bc663@gmail.com> Cc: junchoon@dec.sakura.ne.jp, svn-src-head@freebsd.org To: Ruslan Garipov References: <20200316001745.07df62f72d647b924b657d86@dec.sakura.ne.jp> <746EE981-536F-49AD-9B76-F9F103ECB1F9@me.com> <20200317211614.bbe1b18a32d7863941fffbe8@dec.sakura.ne.jp> <55b1f91b-6157-bfee-cd74-124ed50bc663@gmail.com> X-Mailer: Apple Mail (2.3608.60.0.2.5) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2020-03-18_07:, , signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1011 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1908290000 definitions=main-2003180078 X-Rspamd-Queue-Id: 48jH9D3F9Yz471F X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.09 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; FREEMAIL_FROM(0.00)[me.com]; R_SPF_ALLOW(-0.20)[+ip4:17.58.0.0/16]; MV_CASE(0.50)[]; URI_COUNT_ODD(1.00)[7]; DKIM_TRACE(0.00)[me.com:+]; DMARC_POLICY_ALLOW(-0.50)[me.com,quarantine]; FREEMAIL_TO(0.00)[gmail.com]; RECEIVED_SPAMHAUS_PBL(0.00)[148.52.235.80.khpj7ygk5idzvmvt5x4ziurxhy.zen.dq.spamhaus.net : 127.0.0.10]; RCVD_IN_DNSWL_LOW(-0.10)[187.23.58.17.list.dnswl.org : 127.0.5.1]; MIME_TRACE(0.00)[0:+,1:+,2:~]; FROM_EQ_ENVFROM(0.00)[]; ASN(0.00)[asn:714, ipnet:17.58.16.0/20, country:US]; MID_RHS_MATCH_FROM(0.00)[]; ARC_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[me.com]; R_DKIM_ALLOW(-0.20)[me.com:s=1a1hai]; NEURAL_HAM_MEDIUM(-0.49)[-0.489,0]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; NEURAL_HAM_LONG(-1.00)[-0.998,0]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; IP_SCORE(0.00)[ip: (-5.13), ipnet: 17.58.16.0/20(-1.50), asn: 714(-2.38), country: US(-0.05)]; IP_SCORE_FREEMAIL(0.00)[]; DWL_DNSWL_LOW(-1.00)[me.com.dwl.dnswl.org : 127.0.5.1]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[] Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 17:29:54 -0000 > On 18. Mar 2020, at 18:40, Ruslan Garipov = wrote: >=20 > On 3/17/2020 5:16 PM, Tomoaki AOKI wrote: >> Hi! Thanks for your respond. >>=20 >> Unfortunately, no. >> I'm running on ThinkPad P52, which has no com connector installed. >> No USB serial interface connected. >>=20 >> `efi-show -g global -v ConOut` on loader prompt shows >>=20 >> global NV,BS,RS ConOut =3D >> PciRoot(0,0)/Pci((0x1,oxo)/Pci(0x0,0x0)/AcpiAdr(0x80010100) >>=20 >> Moreover, my previous idea didn't help. >>=20 >> Neither >> console=3D"vidconsole" >> console=3D"eficonsole" >> console=3D"efi_console" >> nor >> console=3D"efi" >> in /boot/loader.conf works. >>=20 >> Defining / undefining TERM_EMU on build are untested. >>=20 >> Is there any setting for /boot/loader.conf to control the behavior? >>=20 >>=20 >> Regards. >>=20 >>=20 >> On Mon, 16 Mar 2020 08:26:56 +0200 >> Toomas Soome wrote: >>=20 >>> Hi! >>>=20 >>> This means, your system has UART serial device =E3=80=93 you can = check this from loader prompt: efi-show -g global -v ConOut or with = efivar from running system. This w ould trigger efi = console driver to use TERM_EMU, which can be turned off by user and = doing that would cause ESC sequences to be passed directly to console. = Might that be true in your case? >>>=20 >>> rgds, >>> toomas >>>=20 >>>> On 15. Mar 2020, at 17:17, Tomoaki AOKI = wrote: >>>>=20 >>>> Hi. >>>>=20 >>>> This broke loader menu display on efifb. At least on amd64. >>>> ESC sequences without ESC character are shown. >>>> Key input (at least 1, 2 and enter) works OK. >>>> I suspect outputs for SIO is sent to efifb and ESC codes are = ignored. >>>>=20 >>>> Reverting this fixes the issue. > I got the same issue with loader menu when was upgrading from r358827 = to > r359028 (x86-64). >=20 > But unfortunately the broken menu is just a part of my problem. The > real pain is that a FreeBSD 13.0-CURRENT system hosted by VMware ESXi = or > Workstation doesn't boot anymore after r358989. An ugly workaround[1] > (exiting from the loader menu into the loader prompt, running ls or > show, scrolling the result down and then executing boot) I found some > time ago doesn't work anymore. After running boot/boot -s/selecting > menu item, a hypervisor just shuts session down with the following > message: ``The firmware encountered an unexpected exception. The = virtual > machine cannot boot.'' >=20 > The virtual guests don't have any UART (even USB) serial devices in > their settings. efi-show prints result similar to what Tomoaki got: >=20 > OK efi-show -g global -v CounOut > global NV,BS,RS ConOut =3D = PciRoot(0x0)/Pci(0x2,0x0)/AcpiAdr(0x80014310) >=20 > Undefining TERM_EMU doesn't help. I had completely removed CFLAGS > assignment with TERM_EMU from stand/efi/libefi/Makefile and rebuilt > kernel/world -- nothing changed. I don't define TERM_EMU in my > make.conf or/and src.conf. >=20 > Reverting this revision fix booting (and menu, of course). >=20 > FreeBSD on physical hardware boots just fine with this revision, but = has > corrupted loader menu. >=20 > Toomas, please help us to fix this. I can live with the broken menu, > but I don't want to revert this revision every time I will upgrade my > virtual machines after r359028 now. Hi! The build, are you doing build with -DNO_CLEAN? or can you run make = clean in stand and then build it again? Otherwise, if you can poke me on = irc, I=E2=80=99d like to get to the bottom of this. Regarding the issue with vm, I am afraid the roots are going much deeper = there. I have not got to the exact cause (and therefore a fix), but the = problem is not about this specific patch. The problem is about memory = map, specifically one just before and after we switch off Boot Services.=20= rgds, toomas >=20 > [1] > = https://old.reddit.com/r/freebsd/comments/drxqlm/failed_to_do_efi_boot_on_= a_vmware_virtual_machine/f6om6p2/ = >>>>=20 >>>> Not tried (not enough time for now as I'm mainly using stable/12), >>>> but possibly calling efi_cons_probe() from efi_cons_init() would be >>>> needed, as ome codes are moved from the latter to the former. >>>>=20 >>>>=20 >>>>> Author: tsoome >>>>> Date: Sat Mar 14 06:36:03 2020 >>>>> New Revision: 358989 >>>>> URL: https://svnweb.freebsd.org/changeset/base/358989 >>>>>=20 >>>>> Log: >>>>> loader: add comconsole implementation on top of SIO protocol >>>>>=20 >>>>> Provide comconsole on top of SIO for arm platforms (x86 does use = bios >>>> version). >>>>>=20 >>>>> Added: >>>>> head/stand/efi/loader/efiserialio.c (contents, props changed) >>>>> Modified: >>>>> head/stand/efi/libefi/efi_console.c >>>>> head/stand/efi/loader/arch/arm/Makefile.inc >>>>> head/stand/efi/loader/arch/arm64/Makefile.inc >>>>> head/stand/efi/loader/conf.c >>>>> head/stand/efi/loader/main.c >>>>>=20 >>>>> Modified: head/stand/efi/libefi/efi_console.c >>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>> --- head/stand/efi/libefi/efi_console.c Sat Mar 14 05:57:22 >>>> 2020 (r358988) >>>>> +++ head/stand/efi/libefi/efi_console.c >>>> Sat Mar 14 06:36:03 2020 (r358989) >>>>> @@ -377,9 +377,22 @@ efi_cons_respond(void *s __unused, const void = *buf __u >>>>> { >>>>> } >>>>>=20 >>>>> +/* >>>>> + * Set up conin/conout/coninex to make sure we have input ready. >>>>> + */ >>>>> static void >>>>> efi_cons_probe(struct console *cp) >>>>> { >>>>> + EFI_STATUS status; >>>>> + >>>>> + conout =3D ST->ConOut; >>>>> + conin =3D ST->ConIn; >>>>> + >>>>> + status =3D BS->OpenProtocol(ST->ConsoleInHandle, >>>> &simple_input_ex_guid, >>>>> + (void **)&coninex, IH, NULL, >>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); >>>>> + if (status !=3D EFI_SUCCESS) >>>>> + coninex =3D NULL; >>>>> + >>>>> cp->c_flags |=3D C_PRESENTIN | C_PRESENTOUT; >>>>> } >>>>>=20 >>>>> @@ -889,15 +902,7 @@ efi_cons_init(int arg) >>>>> if (conin !=3D NULL) >>>>> return (0); >>>>>=20 >>>>> - conout =3D ST->ConOut; >>>>> - conin =3D ST->ConIn; >>>>> - >>>>> conout->EnableCursor(conout, TRUE); >>>>> - status =3D BS->OpenProtocol(ST->ConsoleInHandle, >>>> &simple_input_ex_guid, >>>>> - (void **)&coninex, IH, NULL, >>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); >>>>> - if (status !=3D EFI_SUCCESS) >>>>> - coninex =3D NULL; >>>>> - >>>>> if (efi_cons_update_mode()) >>>>> return (0); >>>>>=20 >>>>>=20 >>>>> Modified: head/stand/efi/loader/arch/arm/Makefile.inc >>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>> --- head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 >>>> 05:57:22 2020 (r358988) >>>>> +++ head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 = 06:36:03 >>>> 2020 (r358989) >>>>> @@ -1,6 +1,7 @@ >>>>> # $FreeBSD$ >>>>>=20 >>>>> SRCS+=3D exec.c \ >>>>> + efiserialio.c \ >>>>> start.S >>>>>=20 >>>>> HAVE_FDT=3Dyes >>>>=20 >>>> (Snip) >>>>=20 >>>>> @@ -930,7 +936,6 @@ main(int argc, CHAR16 *argv[]) >>>>> if (!has_kbd && (howto & RB_PROBE)) >>>>> howto |=3D RB_SERIAL | RB_MULTIPLE; >>>>> howto &=3D ~RB_PROBE; >>>>> - uhowto =3D parse_uefi_con_out(); >>>>>=20 >>>>> /* >>>>> * Read additional environment variables from the boot device's >>>>=20 >>>> --=20 >>>> Tomoaki AOKI From owner-svn-src-head@freebsd.org Wed Mar 18 18:26:59 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 63B9E268CD6; Wed, 18 Mar 2020 18:26:59 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jJR63Zfwz42P2; Wed, 18 Mar 2020 18:26:58 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1773A260F8; Wed, 18 Mar 2020 18:26:58 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IIQwjt015147; Wed, 18 Mar 2020 18:26:58 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IIQrUc015124; Wed, 18 Mar 2020 18:26:53 GMT (envelope-from dim@FreeBSD.org) Message-Id: <202003181826.02IIQrUc015124@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Wed, 18 Mar 2020 18:26:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359082 - in head: contrib/llvm-project/clang/include/clang/AST contrib/llvm-project/clang/include/clang/Sema contrib/llvm-project/clang/lib/AST contrib/llvm-project/clang/lib/Lex contr... X-SVN-Group: head X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in head: contrib/llvm-project/clang/include/clang/AST contrib/llvm-project/clang/include/clang/Sema contrib/llvm-project/clang/lib/AST contrib/llvm-project/clang/lib/Lex contrib/llvm-project/clang/lib... X-SVN-Commit-Revision: 359082 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 18:26:59 -0000 Author: dim Date: Wed Mar 18 18:26:53 2020 New Revision: 359082 URL: https://svnweb.freebsd.org/changeset/base/359082 Log: Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp llvmorg-10.0.0-rc4-5-g52c365aa9ca. The actual release should follow Real Soon Now. PR: 244251 MFC after: 6 weeks Modified: head/contrib/llvm-project/clang/include/clang/AST/Expr.h head/contrib/llvm-project/clang/include/clang/AST/Stmt.h head/contrib/llvm-project/clang/include/clang/Sema/Sema.h head/contrib/llvm-project/clang/include/clang/Sema/Template.h head/contrib/llvm-project/clang/lib/AST/ASTImporter.cpp head/contrib/llvm-project/clang/lib/Lex/Pragma.cpp head/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp head/contrib/llvm-project/clang/lib/Sema/SemaExprCXX.cpp head/contrib/llvm-project/clang/lib/Sema/SemaTemplate.cpp head/contrib/llvm-project/clang/lib/Sema/SemaTemplateInstantiate.cpp head/contrib/llvm-project/clang/lib/Sema/TreeTransform.h head/contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp head/contrib/llvm-project/clang/lib/Serialization/ASTReaderStmt.cpp head/contrib/llvm-project/clang/lib/Serialization/ASTWriterStmt.cpp head/contrib/llvm-project/clang/tools/driver/driver.cpp head/contrib/llvm-project/llvm/include/llvm/Support/ManagedStatic.h head/contrib/llvm-project/llvm/include/llvm/Support/Timer.h head/contrib/llvm-project/llvm/lib/Support/Timer.cpp head/lib/clang/include/VCSVersion.inc head/lib/clang/include/llvm/Support/VCSRevision.h Directory Properties: head/contrib/llvm-project/ (props changed) head/contrib/llvm-project/clang/ (props changed) head/contrib/llvm-project/llvm/ (props changed) Modified: head/contrib/llvm-project/clang/include/clang/AST/Expr.h ============================================================================== --- head/contrib/llvm-project/clang/include/clang/AST/Expr.h Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/include/clang/AST/Expr.h Wed Mar 18 18:26:53 2020 (r359082) @@ -3955,14 +3955,18 @@ class StmtExpr : public Expr { Stmt *SubStmt; SourceLocation LParenLoc, RParenLoc; public: - StmtExpr(CompoundStmt *substmt, QualType T, - SourceLocation lp, SourceLocation rp, bool InDependentContext) : - // Note: we treat a statement-expression in a dependent context as always - // being value- and instantiation-dependent. This matches the behavior of - // lambda-expressions and GCC. - Expr(StmtExprClass, T, VK_RValue, OK_Ordinary, - T->isDependentType(), InDependentContext, InDependentContext, false), - SubStmt(substmt), LParenLoc(lp), RParenLoc(rp) {} + StmtExpr(CompoundStmt *SubStmt, QualType T, SourceLocation LParenLoc, + SourceLocation RParenLoc, unsigned TemplateDepth) + : // We treat a statement-expression in a dependent context as + // always being value- and instantiation-dependent. This matches the + // behavior of lambda-expressions and GCC. + Expr(StmtExprClass, T, VK_RValue, OK_Ordinary, T->isDependentType(), + TemplateDepth != 0, TemplateDepth != 0, false), + SubStmt(SubStmt), LParenLoc(LParenLoc), RParenLoc(RParenLoc) { + // FIXME: A templated statement expression should have an associated + // DeclContext so that nested declarations always have a dependent context. + StmtExprBits.TemplateDepth = TemplateDepth; + } /// Build an empty statement expression. explicit StmtExpr(EmptyShell Empty) : Expr(StmtExprClass, Empty) { } @@ -3978,6 +3982,8 @@ class StmtExpr : public Expr { void setLParenLoc(SourceLocation L) { LParenLoc = L; } SourceLocation getRParenLoc() const { return RParenLoc; } void setRParenLoc(SourceLocation L) { RParenLoc = L; } + + unsigned getTemplateDepth() const { return StmtExprBits.TemplateDepth; } static bool classof(const Stmt *T) { return T->getStmtClass() == StmtExprClass; Modified: head/contrib/llvm-project/clang/include/clang/AST/Stmt.h ============================================================================== --- head/contrib/llvm-project/clang/include/clang/AST/Stmt.h Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/include/clang/AST/Stmt.h Wed Mar 18 18:26:53 2020 (r359082) @@ -588,6 +588,18 @@ class alignas(void *) Stmt { (protected) unsigned Kind : 2; }; + class StmtExprBitfields { + friend class ASTStmtReader; + friend class StmtExpr; + + unsigned : NumExprBits; + + /// The number of levels of template parameters enclosing this statement + /// expression. Used to determine if a statement expression remains + /// dependent after instantiation. + unsigned TemplateDepth; + }; + //===--- C++ Expression bitfields classes ---===// class CXXOperatorCallExprBitfields { @@ -995,6 +1007,9 @@ class alignas(void *) Stmt { (protected) GenericSelectionExprBitfields GenericSelectionExprBits; PseudoObjectExprBitfields PseudoObjectExprBits; SourceLocExprBitfields SourceLocExprBits; + + // GNU Extensions. + StmtExprBitfields StmtExprBits; // C++ Expressions CXXOperatorCallExprBitfields CXXOperatorCallExprBits; Modified: head/contrib/llvm-project/clang/include/clang/Sema/Sema.h ============================================================================== --- head/contrib/llvm-project/clang/include/clang/Sema/Sema.h Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/include/clang/Sema/Sema.h Wed Mar 18 18:26:53 2020 (r359082) @@ -620,6 +620,15 @@ class Sema final { (public) /// function, block, and method scopes that are currently active. SmallVector FunctionScopes; + /// The index of the first FunctionScope that corresponds to the current + /// context. + unsigned FunctionScopesStart = 0; + + ArrayRef getFunctionScopes() const { + return llvm::makeArrayRef(FunctionScopes.begin() + FunctionScopesStart, + FunctionScopes.end()); + } + /// Stack containing information needed when in C++2a an 'auto' is encountered /// in a function declaration parameter type specifier in order to invent a /// corresponding template parameter in the enclosing abbreviated function @@ -627,6 +636,16 @@ class Sema final { (public) /// the FunctionScopes stack. SmallVector InventedParameterInfos; + /// The index of the first InventedParameterInfo that refers to the current + /// context. + unsigned InventedParameterInfosStart = 0; + + ArrayRef getInventedParameterInfos() const { + return llvm::makeArrayRef(InventedParameterInfos.begin() + + InventedParameterInfosStart, + InventedParameterInfos.end()); + } + typedef LazyVector ExtVectorDeclsType; @@ -800,17 +819,24 @@ class Sema final { (public) DeclContext *SavedContext; ProcessingContextState SavedContextState; QualType SavedCXXThisTypeOverride; + unsigned SavedFunctionScopesStart; + unsigned SavedInventedParameterInfosStart; public: ContextRAII(Sema &S, DeclContext *ContextToPush, bool NewThisContext = true) : S(S), SavedContext(S.CurContext), SavedContextState(S.DelayedDiagnostics.pushUndelayed()), - SavedCXXThisTypeOverride(S.CXXThisTypeOverride) + SavedCXXThisTypeOverride(S.CXXThisTypeOverride), + SavedFunctionScopesStart(S.FunctionScopesStart), + SavedInventedParameterInfosStart(S.InventedParameterInfosStart) { assert(ContextToPush && "pushing null context"); S.CurContext = ContextToPush; if (NewThisContext) S.CXXThisTypeOverride = QualType(); + // Any saved FunctionScopes do not refer to this context. + S.FunctionScopesStart = S.FunctionScopes.size(); + S.InventedParameterInfosStart = S.InventedParameterInfos.size(); } void pop() { @@ -818,6 +844,8 @@ class Sema final { (public) S.CurContext = SavedContext; S.DelayedDiagnostics.popUndelayed(SavedContextState); S.CXXThisTypeOverride = SavedCXXThisTypeOverride; + S.FunctionScopesStart = SavedFunctionScopesStart; + S.InventedParameterInfosStart = SavedInventedParameterInfosStart; SavedContext = nullptr; } @@ -4924,7 +4952,9 @@ class Sema final { (public) void ActOnStartStmtExpr(); ExprResult ActOnStmtExpr(Scope *S, SourceLocation LPLoc, Stmt *SubStmt, - SourceLocation RPLoc); // "({..})" + SourceLocation RPLoc); + ExprResult BuildStmtExpr(SourceLocation LPLoc, Stmt *SubStmt, + SourceLocation RPLoc, unsigned TemplateDepth); // Handle the final expression in a statement expression. ExprResult ActOnStmtExprResult(ExprResult E); void ActOnStmtExprError(); @@ -11923,6 +11953,13 @@ class Sema final { (public) DC = CatD->getClassInterface(); return DC; } + + /// Determine the number of levels of enclosing template parameters. This is + /// only usable while parsing. Note that this does not include dependent + /// contexts in which no template parameters have yet been declared, such as + /// in a terse function template or generic lambda before the first 'auto' is + /// encountered. + unsigned getTemplateDepth(Scope *S) const; /// To be used for checking whether the arguments being passed to /// function exceeds the number of parameters expected for it. Modified: head/contrib/llvm-project/clang/include/clang/Sema/Template.h ============================================================================== --- head/contrib/llvm-project/clang/include/clang/Sema/Template.h Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/include/clang/Sema/Template.h Wed Mar 18 18:26:53 2020 (r359082) @@ -95,6 +95,16 @@ class VarDecl; return TemplateArgumentLists.size(); } + /// Determine how many of the \p OldDepth outermost template parameter + /// lists would be removed by substituting these arguments. + unsigned getNewDepth(unsigned OldDepth) const { + if (OldDepth < NumRetainedOuterLevels) + return OldDepth; + if (OldDepth < getNumLevels()) + return NumRetainedOuterLevels; + return OldDepth - TemplateArgumentLists.size(); + } + /// Retrieve the template argument at a given depth and index. const TemplateArgument &operator()(unsigned Depth, unsigned Index) const { assert(NumRetainedOuterLevels <= Depth && Depth < getNumLevels()); Modified: head/contrib/llvm-project/clang/lib/AST/ASTImporter.cpp ============================================================================== --- head/contrib/llvm-project/clang/lib/AST/ASTImporter.cpp Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/lib/AST/ASTImporter.cpp Wed Mar 18 18:26:53 2020 (r359082) @@ -6726,7 +6726,7 @@ ExpectedStmt ASTNodeImporter::VisitStmtExpr(StmtExpr * return new (Importer.getToContext()) StmtExpr(ToSubStmt, ToType, ToLParenLoc, ToRParenLoc, - E->isInstantiationDependent()); + E->getTemplateDepth()); } ExpectedStmt ASTNodeImporter::VisitUnaryOperator(UnaryOperator *E) { Modified: head/contrib/llvm-project/clang/lib/Lex/Pragma.cpp ============================================================================== --- head/contrib/llvm-project/clang/lib/Lex/Pragma.cpp Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/lib/Lex/Pragma.cpp Wed Mar 18 18:26:53 2020 (r359082) @@ -42,6 +42,7 @@ #include "llvm/ADT/StringRef.h" #include "llvm/Support/Compiler.h" #include "llvm/Support/ErrorHandling.h" +#include "llvm/Support/Timer.h" #include #include #include @@ -1038,6 +1039,8 @@ struct PragmaDebugHandler : public PragmaHandler { if (!PP.getPreprocessorOpts().DisablePragmaDebugCrash) llvm_unreachable("This is an assertion!"); } else if (II->isStr("crash")) { + llvm::Timer T("crash", "pragma crash"); + llvm::TimeRegion R(&T); if (!PP.getPreprocessorOpts().DisablePragmaDebugCrash) LLVM_BUILTIN_TRAP; } else if (II->isStr("parser_crash")) { Modified: head/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp ============================================================================== --- head/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp Wed Mar 18 18:26:53 2020 (r359082) @@ -13909,7 +13909,12 @@ void Sema::ActOnStmtExprError() { } ExprResult Sema::ActOnStmtExpr(Scope *S, SourceLocation LPLoc, Stmt *SubStmt, - SourceLocation RPLoc) { // "({..})" + SourceLocation RPLoc) { + return BuildStmtExpr(LPLoc, SubStmt, RPLoc, getTemplateDepth(S)); +} + +ExprResult Sema::BuildStmtExpr(SourceLocation LPLoc, Stmt *SubStmt, + SourceLocation RPLoc, unsigned TemplateDepth) { assert(SubStmt && isa(SubStmt) && "Invalid action invocation!"); CompoundStmt *Compound = cast(SubStmt); @@ -13938,18 +13943,10 @@ ExprResult Sema::ActOnStmtExpr(Scope *S, SourceLocatio } } - bool IsDependentContext = false; - if (S) - IsDependentContext = S->getTemplateParamParent() != nullptr; - else - // FIXME: This is not correct when substituting inside a templated - // context that isn't a DeclContext (such as a variable template). - IsDependentContext = CurContext->isDependentContext(); - // FIXME: Check that expression type is complete/non-abstract; statement // expressions are not lvalues. Expr *ResStmtExpr = - new (Context) StmtExpr(Compound, Ty, LPLoc, RPLoc, IsDependentContext); + new (Context) StmtExpr(Compound, Ty, LPLoc, RPLoc, TemplateDepth); if (StmtExprMayBindToTemp) return MaybeBindToTemporary(ResStmtExpr); return ResStmtExpr; Modified: head/contrib/llvm-project/clang/lib/Sema/SemaExprCXX.cpp ============================================================================== --- head/contrib/llvm-project/clang/lib/Sema/SemaExprCXX.cpp Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/lib/Sema/SemaExprCXX.cpp Wed Mar 18 18:26:53 2020 (r359082) @@ -6802,7 +6802,7 @@ Stmt *Sema::MaybeCreateStmtWithCleanups(Stmt *SubStmt) Context, SubStmt, SourceLocation(), SourceLocation()); Expr *E = new (Context) StmtExpr(CompStmt, Context.VoidTy, SourceLocation(), SourceLocation(), - CurContext->isDependentContext()); + /*FIXME TemplateDepth=*/0); return MaybeCreateExprWithCleanups(E); } Modified: head/contrib/llvm-project/clang/lib/Sema/SemaTemplate.cpp ============================================================================== --- head/contrib/llvm-project/clang/lib/Sema/SemaTemplate.cpp Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/lib/Sema/SemaTemplate.cpp Wed Mar 18 18:26:53 2020 (r359082) @@ -46,6 +46,48 @@ clang::getTemplateParamsRange(TemplateParameterList co return SourceRange(Ps[0]->getTemplateLoc(), Ps[N-1]->getRAngleLoc()); } +unsigned Sema::getTemplateDepth(Scope *S) const { + unsigned Depth = 0; + + // Each template parameter scope represents one level of template parameter + // depth. + for (Scope *TempParamScope = S->getTemplateParamParent(); + TempParamScope && !Depth; + TempParamScope = TempParamScope->getParent()->getTemplateParamParent()) { + ++Depth; + } + + // Note that there are template parameters with the given depth. + auto ParamsAtDepth = [&](unsigned D) { Depth = std::max(Depth, D + 1); }; + + // Look for parameters of an enclosing generic lambda. We don't create a + // template parameter scope for these. + for (FunctionScopeInfo *FSI : getFunctionScopes()) { + if (auto *LSI = dyn_cast(FSI)) { + if (!LSI->TemplateParams.empty()) { + ParamsAtDepth(LSI->AutoTemplateParameterDepth); + break; + } + if (LSI->GLTemplateParameterList) { + ParamsAtDepth(LSI->GLTemplateParameterList->getDepth()); + break; + } + } + } + + // Look for parameters of an enclosing terse function template. We don't + // create a template parameter scope for these either. + for (const InventedTemplateParameterInfo &Info : + getInventedParameterInfos()) { + if (!Info.TemplateParams.empty()) { + ParamsAtDepth(Info.AutoTemplateParameterDepth); + break; + } + } + + return Depth; +} + /// \brief Determine whether the declaration found is acceptable as the name /// of a template and, if so, return that template declaration. Otherwise, /// returns null. @@ -2173,9 +2215,15 @@ struct ConvertConstructorToDeductionGuideTransform { ( // constructor. ExprResult NewDefArg; if (OldParam->hasDefaultArg()) { - NewDefArg = SemaRef.SubstExpr(OldParam->getDefaultArg(), Args); - if (NewDefArg.isInvalid()) - return nullptr; + // We don't care what the value is (we won't use it); just create a + // placeholder to indicate there is a default argument. + QualType ParamTy = NewDI->getType(); + NewDefArg = new (SemaRef.Context) + OpaqueValueExpr(OldParam->getDefaultArg()->getBeginLoc(), + ParamTy.getNonLValueExprType(SemaRef.Context), + ParamTy->isLValueReferenceType() ? VK_LValue : + ParamTy->isRValueReferenceType() ? VK_XValue : + VK_RValue); } ParmVarDecl *NewParam = ParmVarDecl::Create(SemaRef.Context, DC, Modified: head/contrib/llvm-project/clang/lib/Sema/SemaTemplateInstantiate.cpp ============================================================================== --- head/contrib/llvm-project/clang/lib/Sema/SemaTemplateInstantiate.cpp Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/lib/Sema/SemaTemplateInstantiate.cpp Wed Mar 18 18:26:53 2020 (r359082) @@ -922,6 +922,10 @@ namespace { this->Entity = Entity; } + unsigned TransformTemplateDepth(unsigned Depth) { + return TemplateArgs.getNewDepth(Depth); + } + bool TryExpandParameterPacks(SourceLocation EllipsisLoc, SourceRange PatternRange, ArrayRef Unexpanded, @@ -2162,7 +2166,7 @@ namespace { // The deduced type itself. TemplateTypeParmDecl *VisitTemplateTypeParmType( const TemplateTypeParmType *T) { - if (!T->getDecl()->isImplicit()) + if (!T->getDecl() || !T->getDecl()->isImplicit()) return nullptr; return T->getDecl(); } Modified: head/contrib/llvm-project/clang/lib/Sema/TreeTransform.h ============================================================================== --- head/contrib/llvm-project/clang/lib/Sema/TreeTransform.h Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/lib/Sema/TreeTransform.h Wed Mar 18 18:26:53 2020 (r359082) @@ -212,6 +212,14 @@ class TreeTransform { (public) return T.isNull(); } + /// Transform a template parameter depth level. + /// + /// During a transformation that transforms template parameters, this maps + /// an old template parameter depth to a new depth. + unsigned TransformTemplateDepth(unsigned Depth) { + return Depth; + } + /// Determine whether the given call argument should be dropped, e.g., /// because it is a default argument. /// @@ -2527,8 +2535,9 @@ class TreeTransform { (public) /// By default, performs semantic analysis to build the new expression. /// Subclasses may override this routine to provide different behavior. ExprResult RebuildStmtExpr(SourceLocation LParenLoc, Stmt *SubStmt, - SourceLocation RParenLoc) { - return getSema().ActOnStmtExpr(nullptr, LParenLoc, SubStmt, RParenLoc); + SourceLocation RParenLoc, unsigned TemplateDepth) { + return getSema().BuildStmtExpr(LParenLoc, SubStmt, RParenLoc, + TemplateDepth); } /// Build a new __builtin_choose_expr expression. @@ -10345,16 +10354,18 @@ TreeTransform::TransformStmtExpr(StmtExpr *E) return ExprError(); } - if (!getDerived().AlwaysRebuild() && + unsigned OldDepth = E->getTemplateDepth(); + unsigned NewDepth = getDerived().TransformTemplateDepth(OldDepth); + + if (!getDerived().AlwaysRebuild() && OldDepth == NewDepth && SubStmt.get() == E->getSubStmt()) { // Calling this an 'error' is unintuitive, but it does the right thing. SemaRef.ActOnStmtExprError(); return SemaRef.MaybeBindToTemporary(E); } - return getDerived().RebuildStmtExpr(E->getLParenLoc(), - SubStmt.get(), - E->getRParenLoc()); + return getDerived().RebuildStmtExpr(E->getLParenLoc(), SubStmt.get(), + E->getRParenLoc(), NewDepth); } template Modified: head/contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp ============================================================================== --- head/contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp Wed Mar 18 18:26:53 2020 (r359082) @@ -2867,7 +2867,8 @@ uint64_t ASTReader::getGlobalBitOffset(ModuleFile &M, return LocalOffset + M.GlobalBitOffset; } -static bool isSameTemplateParameterList(const TemplateParameterList *X, +static bool isSameTemplateParameterList(const ASTContext &C, + const TemplateParameterList *X, const TemplateParameterList *Y); /// Determine whether two template parameters are similar enough @@ -2879,7 +2880,32 @@ static bool isSameTemplateParameter(const NamedDecl *X if (const auto *TX = dyn_cast(X)) { const auto *TY = cast(Y); - return TX->isParameterPack() == TY->isParameterPack(); + if (TX->isParameterPack() != TY->isParameterPack()) + return false; + if (TX->hasTypeConstraint() != TY->hasTypeConstraint()) + return false; + if (TX->hasTypeConstraint()) { + const TypeConstraint *TXTC = TX->getTypeConstraint(); + const TypeConstraint *TYTC = TY->getTypeConstraint(); + if (TXTC->getNamedConcept() != TYTC->getNamedConcept()) + return false; + if (TXTC->hasExplicitTemplateArgs() != TYTC->hasExplicitTemplateArgs()) + return false; + if (TXTC->hasExplicitTemplateArgs()) { + const auto *TXTCArgs = TXTC->getTemplateArgsAsWritten(); + const auto *TYTCArgs = TYTC->getTemplateArgsAsWritten(); + if (TXTCArgs->NumTemplateArgs != TYTCArgs->NumTemplateArgs) + return false; + llvm::FoldingSetNodeID XID, YID; + for (const auto &ArgLoc : TXTCArgs->arguments()) + ArgLoc.getArgument().Profile(XID, X->getASTContext()); + for (const auto &ArgLoc : TYTCArgs->arguments()) + ArgLoc.getArgument().Profile(YID, Y->getASTContext()); + if (XID != YID) + return false; + } + } + return true; } if (const auto *TX = dyn_cast(X)) { @@ -2891,7 +2917,8 @@ static bool isSameTemplateParameter(const NamedDecl *X const auto *TX = cast(X); const auto *TY = cast(Y); return TX->isParameterPack() == TY->isParameterPack() && - isSameTemplateParameterList(TX->getTemplateParameters(), + isSameTemplateParameterList(TX->getASTContext(), + TX->getTemplateParameters(), TY->getTemplateParameters()); } @@ -2944,7 +2971,8 @@ static bool isSameQualifier(const NestedNameSpecifier /// Determine whether two template parameter lists are similar enough /// that they may be used in declarations of the same template. -static bool isSameTemplateParameterList(const TemplateParameterList *X, +static bool isSameTemplateParameterList(const ASTContext &C, + const TemplateParameterList *X, const TemplateParameterList *Y) { if (X->size() != Y->size()) return false; @@ -2953,6 +2981,18 @@ static bool isSameTemplateParameterList(const Template if (!isSameTemplateParameter(X->getParam(I), Y->getParam(I))) return false; + const Expr *XRC = X->getRequiresClause(); + const Expr *YRC = Y->getRequiresClause(); + if (!XRC != !YRC) + return false; + if (XRC) { + llvm::FoldingSetNodeID XRCID, YRCID; + XRC->Profile(XRCID, C, /*Canonical=*/true); + YRC->Profile(YRCID, C, /*Canonical=*/true); + if (XRCID != YRCID) + return false; + } + return true; } @@ -2989,7 +3029,7 @@ static bool hasSameOverloadableAttrs(const FunctionDec return true; } -/// Determine whether the two declarations refer to the same entity. +/// Determine whether the two declarations refer to the same entity.pr static bool isSameEntity(NamedDecl *X, NamedDecl *Y) { assert(X->getDeclName() == Y->getDeclName() && "Declaration name mismatch!"); @@ -3064,6 +3104,19 @@ static bool isSameEntity(NamedDecl *X, NamedDecl *Y) { } ASTContext &C = FuncX->getASTContext(); + + const Expr *XRC = FuncX->getTrailingRequiresClause(); + const Expr *YRC = FuncY->getTrailingRequiresClause(); + if (!XRC != !YRC) + return false; + if (XRC) { + llvm::FoldingSetNodeID XRCID, YRCID; + XRC->Profile(XRCID, C, /*Canonical=*/true); + YRC->Profile(YRCID, C, /*Canonical=*/true); + if (XRCID != YRCID) + return false; + } + auto GetTypeAsWritten = [](const FunctionDecl *FD) { // Map to the first declaration that we've already merged into this one. // The TSI of redeclarations might not match (due to calling conventions @@ -3087,6 +3140,7 @@ static bool isSameEntity(NamedDecl *X, NamedDecl *Y) { return true; return false; } + return FuncX->getLinkageInternal() == FuncY->getLinkageInternal() && hasSameOverloadableAttrs(FuncX, FuncY); } @@ -3126,7 +3180,8 @@ static bool isSameEntity(NamedDecl *X, NamedDecl *Y) { const auto *TemplateY = cast(Y); return isSameEntity(TemplateX->getTemplatedDecl(), TemplateY->getTemplatedDecl()) && - isSameTemplateParameterList(TemplateX->getTemplateParameters(), + isSameTemplateParameterList(TemplateX->getASTContext(), + TemplateX->getTemplateParameters(), TemplateY->getTemplateParameters()); } Modified: head/contrib/llvm-project/clang/lib/Serialization/ASTReaderStmt.cpp ============================================================================== --- head/contrib/llvm-project/clang/lib/Serialization/ASTReaderStmt.cpp Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/lib/Serialization/ASTReaderStmt.cpp Wed Mar 18 18:26:53 2020 (r359082) @@ -754,6 +754,7 @@ void ASTStmtReader::VisitConceptSpecializationExpr( E->TemplateKWLoc = Record.readSourceLocation(); E->ConceptName = Record.readDeclarationNameInfo(); E->NamedConcept = readDeclAs(); + E->FoundDecl = Record.readDeclAs(); E->ArgsAsWritten = Record.readASTTemplateArgumentListInfo(); llvm::SmallVector Args; for (unsigned I = 0; I < NumTemplateArgs; ++I) @@ -1190,6 +1191,7 @@ void ASTStmtReader::VisitStmtExpr(StmtExpr *E) { E->setLParenLoc(readSourceLocation()); E->setRParenLoc(readSourceLocation()); E->setSubStmt(cast_or_null(Record.readSubStmt())); + E->StmtExprBits.TemplateDepth = Record.readInt(); } void ASTStmtReader::VisitChooseExpr(ChooseExpr *E) { Modified: head/contrib/llvm-project/clang/lib/Serialization/ASTWriterStmt.cpp ============================================================================== --- head/contrib/llvm-project/clang/lib/Serialization/ASTWriterStmt.cpp Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/lib/Serialization/ASTWriterStmt.cpp Wed Mar 18 18:26:53 2020 (r359082) @@ -429,6 +429,7 @@ void ASTStmtWriter::VisitConceptSpecializationExpr( Record.AddSourceLocation(E->getTemplateKWLoc()); Record.AddDeclarationNameInfo(E->getConceptNameInfo()); Record.AddDeclRef(E->getNamedConcept()); + Record.AddDeclRef(E->getFoundDecl()); Record.AddASTTemplateArgumentListInfo(E->getTemplateArgsAsWritten()); for (const TemplateArgument &Arg : TemplateArgs) Record.AddTemplateArgument(Arg); @@ -1068,6 +1069,7 @@ void ASTStmtWriter::VisitStmtExpr(StmtExpr *E) { Record.AddStmt(E->getSubStmt()); Record.AddSourceLocation(E->getLParenLoc()); Record.AddSourceLocation(E->getRParenLoc()); + Record.push_back(E->getTemplateDepth()); Code = serialization::EXPR_STMT; } Modified: head/contrib/llvm-project/clang/tools/driver/driver.cpp ============================================================================== --- head/contrib/llvm-project/clang/tools/driver/driver.cpp Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/clang/tools/driver/driver.cpp Wed Mar 18 18:26:53 2020 (r359082) @@ -30,6 +30,7 @@ #include "llvm/Option/ArgList.h" #include "llvm/Option/OptTable.h" #include "llvm/Option/Option.h" +#include "llvm/Support/BuryPointer.h" #include "llvm/Support/CommandLine.h" #include "llvm/Support/CrashRecoveryContext.h" #include "llvm/Support/ErrorHandling.h" @@ -491,6 +492,7 @@ int main(int argc_, const char **argv_) { std::unique_ptr C(TheDriver.BuildCompilation(argv)); int Res = 1; + bool IsCrash = false; if (C && !C->containsError()) { SmallVector, 4> FailingCommands; Res = TheDriver.ExecuteCompilation(*C, FailingCommands); @@ -517,11 +519,11 @@ int main(int argc_, const char **argv_) { // If result status is 70, then the driver command reported a fatal error. // On Windows, abort will return an exit code of 3. In these cases, // generate additional diagnostic information if possible. - bool DiagnoseCrash = CommandRes < 0 || CommandRes == 70; + IsCrash = CommandRes < 0 || CommandRes == 70; #ifdef _WIN32 - DiagnoseCrash |= CommandRes == 3; + IsCrash |= CommandRes == 3; #endif - if (DiagnoseCrash) { + if (IsCrash) { TheDriver.generateCompilationDiagnostics(*C, *FailingCommand); break; } @@ -530,10 +532,16 @@ int main(int argc_, const char **argv_) { Diags.getClient()->finish(); - // If any timers were active but haven't been destroyed yet, print their - // results now. This happens in -disable-free mode. - llvm::TimerGroup::printAll(llvm::errs()); - llvm::TimerGroup::clearAll(); + if (!UseNewCC1Process && IsCrash) { + // When crashing in -fintegrated-cc1 mode, bury the timer pointers, because + // the internal linked list might point to already released stack frames. + llvm::BuryPointer(llvm::TimerGroup::aquireDefaultGroup()); + } else { + // If any timers were active but haven't been destroyed yet, print their + // results now. This happens in -disable-free mode. + llvm::TimerGroup::printAll(llvm::errs()); + llvm::TimerGroup::clearAll(); + } #ifdef _WIN32 // Exit status should not be negative on Win32, unless abnormal termination. Modified: head/contrib/llvm-project/llvm/include/llvm/Support/ManagedStatic.h ============================================================================== --- head/contrib/llvm-project/llvm/include/llvm/Support/ManagedStatic.h Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/llvm/include/llvm/Support/ManagedStatic.h Wed Mar 18 18:26:53 2020 (r359082) @@ -102,6 +102,12 @@ class ManagedStatic : public ManagedStaticBase { (publ } const C *operator->() const { return &**this; } + + // Extract the instance, leaving the ManagedStatic uninitialized. The + // user is then responsible for the lifetime of the returned instance. + C *claim() { + return static_cast(Ptr.exchange(nullptr)); + } }; /// llvm_shutdown - Deallocate and destroy all ManagedStatic variables. Modified: head/contrib/llvm-project/llvm/include/llvm/Support/Timer.h ============================================================================== --- head/contrib/llvm-project/llvm/include/llvm/Support/Timer.h Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/llvm/include/llvm/Support/Timer.h Wed Mar 18 18:26:53 2020 (r359082) @@ -230,6 +230,11 @@ class TimerGroup { (public) /// used by the Statistic code to influence the construction and destruction /// order of the global timer lists. static void ConstructTimerLists(); + + /// This makes the default group unmanaged, and lets the user manage the + /// group's lifetime. + static std::unique_ptr aquireDefaultGroup(); + private: friend class Timer; friend void PrintStatisticsJSON(raw_ostream &OS); Modified: head/contrib/llvm-project/llvm/lib/Support/Timer.cpp ============================================================================== --- head/contrib/llvm-project/llvm/lib/Support/Timer.cpp Wed Mar 18 18:21:58 2020 (r359081) +++ head/contrib/llvm-project/llvm/lib/Support/Timer.cpp Wed Mar 18 18:26:53 2020 (r359082) @@ -441,3 +441,7 @@ const char *TimerGroup::printAllJSONValues(raw_ostream void TimerGroup::ConstructTimerLists() { (void)*NamedGroupedTimers; } + +std::unique_ptr TimerGroup::aquireDefaultGroup() { + return std::unique_ptr(DefaultTimerGroup.claim()); +} Modified: head/lib/clang/include/VCSVersion.inc ============================================================================== --- head/lib/clang/include/VCSVersion.inc Wed Mar 18 18:21:58 2020 (r359081) +++ head/lib/clang/include/VCSVersion.inc Wed Mar 18 18:26:53 2020 (r359082) @@ -1,14 +1,14 @@ // $FreeBSD$ -#define LLVM_REVISION "llvmorg-10.0.0-rc3-1-gc290cb61fdc" +#define LLVM_REVISION "llvmorg-10.0.0-rc4-5-g52c365aa9ca" #define LLVM_REPOSITORY "git@github.com:llvm/llvm-project.git" -#define CLANG_REVISION "llvmorg-10.0.0-rc3-1-gc290cb61fdc" +#define CLANG_REVISION "llvmorg-10.0.0-rc4-5-g52c365aa9ca" #define CLANG_REPOSITORY "git@github.com:llvm/llvm-project.git" // - -#define LLD_REVISION "llvmorg-10.0.0-rc3-1-gc290cb61fdc-1300007" +#define LLD_REVISION "llvmorg-10.0.0-rc4-5-g52c365aa9ca-1300007" #define LLD_REPOSITORY "FreeBSD" -#define LLDB_REVISION "llvmorg-10.0.0-rc3-1-gc290cb61fdc" +#define LLDB_REVISION "llvmorg-10.0.0-rc4-5-g52c365aa9ca" #define LLDB_REPOSITORY "git@github.com:llvm/llvm-project.git" Modified: head/lib/clang/include/llvm/Support/VCSRevision.h ============================================================================== --- head/lib/clang/include/llvm/Support/VCSRevision.h Wed Mar 18 18:21:58 2020 (r359081) +++ head/lib/clang/include/llvm/Support/VCSRevision.h Wed Mar 18 18:26:53 2020 (r359082) @@ -1,3 +1,3 @@ /* $FreeBSD$ */ -#define LLVM_REVISION "llvmorg-10.0.0-rc3-1-gc290cb61fdc" +#define LLVM_REVISION "llvmorg-10.0.0-rc4-5-g52c365aa9ca" #define LLVM_REPOSITORY "git@github.com:llvm/llvm-project.git" From owner-svn-src-head@freebsd.org Wed Mar 18 18:41:57 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 873D6269171 for ; Wed, 18 Mar 2020 18:41:57 +0000 (UTC) (envelope-from brigadir15@gmail.com) Received: from mail-lj1-x242.google.com (mail-lj1-x242.google.com [IPv6:2a00:1450:4864:20::242]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jJmM1qmkz4f3h for ; Wed, 18 Mar 2020 18:41:54 +0000 (UTC) (envelope-from brigadir15@gmail.com) Received: by mail-lj1-x242.google.com with SMTP id o10so28258794ljc.8 for ; Wed, 18 Mar 2020 11:41:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=awGiH95QN4cHD5bh2uw2V7sFWQcxih8rKRQhQSj5gE4=; b=F1NnEDYdbpRxSJrm7Pke5CZsR5LPyccqHOv9ym7vtvgtYDwm2UGwaZLh3sh6+xxorC ybjfNbDnAGCuOMRaJmdkdQDJvb7mjRBll7i2cM+MfmwpChISjqncRVGt5iwYizRWs0kk Ofp2t+0zMV54T4QmvlTHsCcLxpueeNnc06BGv1/9iF+yV+Jc6+LjnrkxQTp2duTXdrGl smaiDbeEeTOdvAa4DgtM1FrAvmO+kJg17Ry5G1Usp8/NDi1rlyRQf0tEn8+4NmDiQFbT yOo27YVSF6mJz0uDnmUJ1XteZYqq2SNYVOuOcz5dkykS4kqVz3k2qpIP0vJnmovWkLvk WZLg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=awGiH95QN4cHD5bh2uw2V7sFWQcxih8rKRQhQSj5gE4=; b=GvSVy2KXanXzfMZ4Z2CeITrsqxMpHTAOIQfLb7LOrAFiGJDF4/ZtEvaZN4XzNnQrSv mXFbc9t6OHJb9uiMSZP3g6H9hSkA8Txv5WI1jJEYg1WnA1BJ7iDmJ6Vgj/xhCdjXFMbs Z8pm/0fhjVg9+jL8C6ZPa3OuU4n2m5XHnWyFWBq0LVJSO2t1kNP7CLZIQCA2DHmf1orZ +a0Abjd97cVgUBHJ6plSzcK/+jYEakUOzjgbKwfmF7mzmfiZMXygnh2OMzu4yhpVhywz 9iTYyOHtNaKSFzww0jC+yx99lGGc7+vuaInNYYVY9ppa4dk/HUYjEDVJ1e0+HgUma1TB tNCQ== X-Gm-Message-State: ANhLgQ3/Zc8GiC05u3CZ/6Tpdg6pw4qKxE1uFNJo4NeQRaE4Oh1WZqoc svs5SRQt6w15f3MdMDSGWryJNUH4jdA= X-Google-Smtp-Source: ADFU+vt0MVl7v+m9Nu1yMEfe5APTXfbZGv9Qa7U+9lEiJP82OlX2BLZzBWBZYIZtT+Qp+WFMQ9llpw== X-Received: by 2002:a05:651c:1186:: with SMTP id w6mr3172928ljo.205.1584556911798; Wed, 18 Mar 2020 11:41:51 -0700 (PDT) Received: from [192.168.1.3] ([46.48.69.183]) by smtp.gmail.com with ESMTPSA id k14sm5070099lfg.96.2020.03.18.11.41.50 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 18 Mar 2020 11:41:51 -0700 (PDT) Subject: Re: svn commit: r358989 - in head/stand/efi: libefi loader loader/arch/arm loader/arch/arm64 To: Toomas Soome Cc: svn-src-head@freebsd.org, junchoon@dec.sakura.ne.jp References: <20200316001745.07df62f72d647b924b657d86@dec.sakura.ne.jp> <746EE981-536F-49AD-9B76-F9F103ECB1F9@me.com> <20200317211614.bbe1b18a32d7863941fffbe8@dec.sakura.ne.jp> <55b1f91b-6157-bfee-cd74-124ed50bc663@gmail.com> From: Ruslan Garipov Message-ID: <944c641f-b570-1420-6b63-96374217d795@gmail.com> Date: Wed, 18 Mar 2020 23:41:49 +0500 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 48jJmM1qmkz4f3h X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20161025 header.b=F1NnEDYd; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of brigadir15@gmail.com designates 2a00:1450:4864:20::242 as permitted sender) smtp.mailfrom=brigadir15@gmail.com X-Spamd-Result: default: False [-2.79 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36:c]; FREEMAIL_FROM(0.00)[gmail.com]; RCVD_COUNT_THREE(0.00)[3]; DKIM_TRACE(0.00)[gmail.com:+]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; FREEMAIL_TO(0.00)[me.com]; FROM_EQ_ENVFROM(0.00)[]; IP_SCORE(0.00)[ip: (2.88), ipnet: 2a00:1450::/32(-2.39), asn: 15169(-1.65), country: US(-0.05)]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]; MID_RHS_MATCH_FROM(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.79)[-0.787,0]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[svn-src-head@freebsd.org]; IP_SCORE_FREEMAIL(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[2.4.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.5.4.1.0.0.a.2.list.dnswl.org : 127.0.5.0]; RCVD_TLS_ALL(0.00)[] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 18:41:57 -0000 On 3/18/2020 10:29 PM, Toomas Soome via svn-src-head wrote: > > >> On 18. Mar 2020, at 18:40, Ruslan Garipov wrote: >> >> On 3/17/2020 5:16 PM, Tomoaki AOKI wrote: >>> Hi! Thanks for your respond. >>> >>> Unfortunately, no. >>> I'm running on ThinkPad P52, which has no com connector installed. >>> No USB serial interface connected. >>> >>> `efi-show -g global -v ConOut` on loader prompt shows >>> >>> global NV,BS,RS ConOut = >>> PciRoot(0,0)/Pci((0x1,oxo)/Pci(0x0,0x0)/AcpiAdr(0x80010100) >>> >>> Moreover, my previous idea didn't help. >>> >>> Neither >>> console="vidconsole" >>> console="eficonsole" >>> console="efi_console" >>> nor >>> console="efi" >>> in /boot/loader.conf works. >>> >>> Defining / undefining TERM_EMU on build are untested. >>> >>> Is there any setting for /boot/loader.conf to control the behavior? >>> >>> >>> Regards. >>> >>> >>> On Mon, 16 Mar 2020 08:26:56 +0200 >>> Toomas Soome wrote: >>> >>>> Hi! >>>> >>>> This means, your system has UART serial device 〓 you can check this from loader prompt: efi-show -g global -v ConOut or with efivar from running system. This w ould trigger efi console driver to use TERM_EMU, which can be turned off by user and doing that would cause ESC sequences to be passed directly to console. Might that be true in your case? >>>> >>>> rgds, >>>> toomas >>>> >>>>> On 15. Mar 2020, at 17:17, Tomoaki AOKI wrote: >>>>> >>>>> Hi. >>>>> >>>>> This broke loader menu display on efifb. At least on amd64. >>>>> ESC sequences without ESC character are shown. >>>>> Key input (at least 1, 2 and enter) works OK. >>>>> I suspect outputs for SIO is sent to efifb and ESC codes are ignored. >>>>> >>>>> Reverting this fixes the issue. >> I got the same issue with loader menu when was upgrading from r358827 to >> r359028 (x86-64). >> >> But unfortunately the broken menu is just a part of my problem. The >> real pain is that a FreeBSD 13.0-CURRENT system hosted by VMware ESXi or >> Workstation doesn't boot anymore after r358989. An ugly workaround[1] >> (exiting from the loader menu into the loader prompt, running ls or >> show, scrolling the result down and then executing boot) I found some >> time ago doesn't work anymore. After running boot/boot -s/selecting >> menu item, a hypervisor just shuts session down with the following >> message: ``The firmware encountered an unexpected exception. The virtual >> machine cannot boot.'' >> >> The virtual guests don't have any UART (even USB) serial devices in >> their settings. efi-show prints result similar to what Tomoaki got: >> >> OK efi-show -g global -v CounOut >> global NV,BS,RS ConOut = PciRoot(0x0)/Pci(0x2,0x0)/AcpiAdr(0x80014310) >> >> Undefining TERM_EMU doesn't help. I had completely removed CFLAGS >> assignment with TERM_EMU from stand/efi/libefi/Makefile and rebuilt >> kernel/world -- nothing changed. I don't define TERM_EMU in my >> make.conf or/and src.conf. >> >> Reverting this revision fix booting (and menu, of course). >> >> FreeBSD on physical hardware boots just fine with this revision, but has >> corrupted loader menu. >> >> Toomas, please help us to fix this. I can live with the broken menu, >> but I don't want to revert this revision every time I will upgrade my >> virtual machines after r359028 now. > > > Hi! > > The build, are you doing build with -DNO_CLEAN? or can you run make clean in stand and then build it again? Otherwise, if you can poke me on irc, I’d like to get to the bottom of this. Hello! I'm sorry, currently I have no access to either IRC, nor my build machine. Therefore, I can't show you the build log. NO_CLEAN -- no, I don't use it. What I've actually done regarding to testing TERM_EMU: I removed `CFLAGS+= -DTERM_EMU` (and the .if condition wrapping this line) from the Makefile, removed /usr/obj directory, and buildworld and buildkernel then. And then install rebuilt kernel/userland on a target machine. Nothing changed, but it should? > > Regarding the issue with vm, I am afraid the roots are going much deeper there. I have not got to the exact cause (and therefore a fix), but the problem is not about this specific patch. The problem is about memory map, specifically one just before and after we switch off Boot Services. That's a very bad news for me. Looking at HEAD's commit list I hope that's a known problem? Or should I open a PR on bugs.FreeBSD.org? Moreover, I believe the next snapshot of the CURRENT (which will be made after r358989) made by the release team will be unbootable on VMware hypervisors. > > rgds, > toomas > > >> >> [1] >> https://old.reddit.com/r/freebsd/comments/drxqlm/failed_to_do_efi_boot_on_a_vmware_virtual_machine/f6om6p2/ >>>>> >>>>> Not tried (not enough time for now as I'm mainly using stable/12), >>>>> but possibly calling efi_cons_probe() from efi_cons_init() would be >>>>> needed, as ome codes are moved from the latter to the former. >>>>> >>>>> >>>>>> Author: tsoome >>>>>> Date: Sat Mar 14 06:36:03 2020 >>>>>> New Revision: 358989 >>>>>> URL: https://svnweb.freebsd.org/changeset/base/358989 >>>>>> >>>>>> Log: >>>>>> loader: add comconsole implementation on top of SIO protocol >>>>>> >>>>>> Provide comconsole on top of SIO for arm platforms (x86 does use bios >>>>> version). >>>>>> >>>>>> Added: >>>>>> head/stand/efi/loader/efiserialio.c (contents, props changed) >>>>>> Modified: >>>>>> head/stand/efi/libefi/efi_console.c >>>>>> head/stand/efi/loader/arch/arm/Makefile.inc >>>>>> head/stand/efi/loader/arch/arm64/Makefile.inc >>>>>> head/stand/efi/loader/conf.c >>>>>> head/stand/efi/loader/main.c >>>>>> >>>>>> Modified: head/stand/efi/libefi/efi_console.c >>>>>> ============================================================================== >>>>>> --- head/stand/efi/libefi/efi_console.c Sat Mar 14 05:57:22 >>>>> 2020 (r358988) >>>>>> +++ head/stand/efi/libefi/efi_console.c >>>>> Sat Mar 14 06:36:03 2020 (r358989) >>>>>> @@ -377,9 +377,22 @@ efi_cons_respond(void *s __unused, const void *buf __u >>>>>> { >>>>>> } >>>>>> >>>>>> +/* >>>>>> + * Set up conin/conout/coninex to make sure we have input ready. >>>>>> + */ >>>>>> static void >>>>>> efi_cons_probe(struct console *cp) >>>>>> { >>>>>> + EFI_STATUS status; >>>>>> + >>>>>> + conout = ST->ConOut; >>>>>> + conin = ST->ConIn; >>>>>> + >>>>>> + status = BS->OpenProtocol(ST->ConsoleInHandle, >>>>> &simple_input_ex_guid, >>>>>> + (void **)&coninex, IH, NULL, >>>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); >>>>>> + if (status != EFI_SUCCESS) >>>>>> + coninex = NULL; >>>>>> + >>>>>> cp->c_flags |= C_PRESENTIN | C_PRESENTOUT; >>>>>> } >>>>>> >>>>>> @@ -889,15 +902,7 @@ efi_cons_init(int arg) >>>>>> if (conin != NULL) >>>>>> return (0); >>>>>> >>>>>> - conout = ST->ConOut; >>>>>> - conin = ST->ConIn; >>>>>> - >>>>>> conout->EnableCursor(conout, TRUE); >>>>>> - status = BS->OpenProtocol(ST->ConsoleInHandle, >>>>> &simple_input_ex_guid, >>>>>> - (void **)&coninex, IH, NULL, >>>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); >>>>>> - if (status != EFI_SUCCESS) >>>>>> - coninex = NULL; >>>>>> - >>>>>> if (efi_cons_update_mode()) >>>>>> return (0); >>>>>> >>>>>> >>>>>> Modified: head/stand/efi/loader/arch/arm/Makefile.inc >>>>>> ============================================================================== >>>>>> --- head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 >>>>> 05:57:22 2020 (r358988) >>>>>> +++ head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 06:36:03 >>>>> 2020 (r358989) >>>>>> @@ -1,6 +1,7 @@ >>>>>> # $FreeBSD$ >>>>>> >>>>>> SRCS+= exec.c \ >>>>>> + efiserialio.c \ >>>>>> start.S >>>>>> >>>>>> HAVE_FDT=yes >>>>> >>>>> (Snip) >>>>> >>>>>> @@ -930,7 +936,6 @@ main(int argc, CHAR16 *argv[]) >>>>>> if (!has_kbd && (howto & RB_PROBE)) >>>>>> howto |= RB_SERIAL | RB_MULTIPLE; >>>>>> howto &= ~RB_PROBE; >>>>>> - uhowto = parse_uefi_con_out(); >>>>>> >>>>>> /* >>>>>> * Read additional environment variables from the boot device's >>>>> >>>>> -- >>>>> Tomoaki AOKI From owner-svn-src-head@freebsd.org Wed Mar 18 20:12:48 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 8E67826B613; Wed, 18 Mar 2020 20:12:48 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jLnC6hX4z4B65; Wed, 18 Mar 2020 20:12:47 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2BF1E275AB; Wed, 18 Mar 2020 20:12:47 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IKCljE081304; Wed, 18 Mar 2020 20:12:47 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IKClM7081303; Wed, 18 Mar 2020 20:12:47 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003182012.02IKClM7081303@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Wed, 18 Mar 2020 20:12:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359083 - head X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head X-SVN-Commit-Revision: 359083 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 20:12:48 -0000 Author: emaste Date: Wed Mar 18 20:12:46 2020 New Revision: 359083 URL: https://svnweb.freebsd.org/changeset/base/359083 Log: invoke _cleanobj_fast_depend_hack unconditionally Apparently make ${CLEANDIR} is leaving stale entries in .depend files; for now invoke the hacky cleanup in both the -DNO_CLEAN and normal (no -DNO_CLEAN) cases. In collaboration with: dim Sponsored by: The FreeBSD Foundation Modified: head/Makefile.inc1 Modified: head/Makefile.inc1 ============================================================================== --- head/Makefile.inc1 Wed Mar 18 18:26:53 2020 (r359082) +++ head/Makefile.inc1 Wed Mar 18 20:12:46 2020 (r359083) @@ -1082,9 +1082,10 @@ _cleanobj: .if defined(_LIBCOMPAT) ${_+_}cd ${.CURDIR}; ${LIBCOMPATWMAKE} _NO_INCLUDE_COMPILERMK=t -f Makefile.inc1 ${CLEANDIR} .endif -.else - ${_+_}cd ${.CURDIR}; ${WMAKE} _NO_INCLUDE_COMPILERMK=t _cleanobj_fast_depend_hack .endif # !defined(NO_CLEAN) + # XXX make cleandir left stale .depend files behind, so invoke the + # dependency cleanup hack unconditionally. + ${_+_}cd ${.CURDIR}; ${WMAKE} _NO_INCLUDE_COMPILERMK=t _cleanobj_fast_depend_hack _obj: @echo @echo "--------------------------------------------------------------" From owner-svn-src-head@freebsd.org Wed Mar 18 20:26:19 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id AE8D526BC67; Wed, 18 Mar 2020 20:26:19 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: from mail-il1-f175.google.com (mail-il1-f175.google.com [209.85.166.175]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jM4p00DZz3Hcn; Wed, 18 Mar 2020 20:26:17 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: by mail-il1-f175.google.com with SMTP id k29so135398ilg.0; Wed, 18 Mar 2020 13:26:17 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=y84HSYT/KU47dS8I7vahyzfoRrcRLQ1qJd/Y9paCZi8=; b=Geg7Y7GsfxZSM0QPrpOowtMfD+dxIVn9JvKHVg3zORCgr1J7+XsHQx++IzJaOizhgL aEdLu1LRw97RMYKlmsEToSfd4DNRoh/ReJTLokdiiirLDEZNrQE+D15ORGa5Sctd7VsQ k2ZtKml/lJ+x/Uy1x3FqoqU+U2O74MLLI2DMl3wxrVAoVID1d1E5ZofF3cZa9mf4BQ0c UGtipnejD60atycN7F007RUEcVP2y2+ojafxSdc7Fgjx6zVHMjO12SUIcwvIzdBxE9G7 jOa4gkeBcs068ianWs/drkhnfr4D3HQTsOcXE96nOf7HoIW1Y35jCj/TR+XWOKl3tzWh pRAQ== X-Gm-Message-State: ANhLgQ2yloElb6qBJwcjFv9NcrloHqMX1OJAZHMVUozd0QI6cVUrhHy0 RUhMIbholuGGitf5RLSkVRi4pHFl8tMNQFCGPi9F5Q== X-Google-Smtp-Source: ADFU+vvgUvUHqSiVSou9TSxYUtVOANeDcn58idqfjZRouAYJGmn6vbvejBzNEXPpV38OEWIJeGkAep2x+fOWlz4rFwY= X-Received: by 2002:a92:8312:: with SMTP id f18mr5709630ild.98.1584563175890; Wed, 18 Mar 2020 13:26:15 -0700 (PDT) MIME-Version: 1.0 References: <202003182012.02IKClM7081303@repo.freebsd.org> In-Reply-To: <202003182012.02IKClM7081303@repo.freebsd.org> From: Ed Maste Date: Wed, 18 Mar 2020 16:26:02 -0400 Message-ID: Subject: Re: svn commit: r359083 - head To: src-committers , svn-src-all , svn-src-head Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 48jM4p00DZz3Hcn X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of carpeddiem@gmail.com designates 209.85.166.175 as permitted sender) smtp.mailfrom=carpeddiem@gmail.com X-Spamd-Result: default: False [-3.87 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; RCVD_TLS_ALL(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17:c]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[freebsd.org]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; IP_SCORE(-1.87)[ip: (-4.69), ipnet: 209.85.128.0/17(-2.97), asn: 15169(-1.65), country: US(-0.05)]; TO_DN_ALL(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[175.166.85.209.list.dnswl.org : 127.0.5.0]; FORGED_SENDER(0.30)[emaste@freebsd.org,carpeddiem@gmail.com]; RWL_MAILSPIKE_POSSIBLE(0.00)[175.166.85.209.rep.mailspike.net : 127.0.0.17]; MIME_TRACE(0.00)[0:+]; R_DKIM_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; FROM_NEQ_ENVFROM(0.00)[emaste@freebsd.org,carpeddiem@gmail.com]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 20:26:19 -0000 On Wed, 18 Mar 2020 at 16:12, Ed Maste wrote: > > Author: emaste > Date: Wed Mar 18 20:12:46 2020 > New Revision: 359083 > URL: https://svnweb.freebsd.org/changeset/base/359083 > > Log: > invoke _cleanobj_fast_depend_hack unconditionally > > Apparently make ${CLEANDIR} is leaving stale entries in .depend files; > for now invoke the hacky cleanup in both the -DNO_CLEAN and normal > (no -DNO_CLEAN) cases. To be clear this is a workaround; the make ${CLEANDIR} step in a regular build (without -DNO_CLEAN) should remove the stale dependencies. Once the underlying problem is fixed we can revert this change. From owner-svn-src-head@freebsd.org Wed Mar 18 20:28:28 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 51EB726BDD8; Wed, 18 Mar 2020 20:28:28 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jM7H5nGvz3NHS; Wed, 18 Mar 2020 20:28:27 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9E9F427797; Wed, 18 Mar 2020 20:28:27 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IKSRcN087850; Wed, 18 Mar 2020 20:28:27 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IKSQGH087844; Wed, 18 Mar 2020 20:28:26 GMT (envelope-from dim@FreeBSD.org) Message-Id: <202003182028.02IKSQGH087844@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Wed, 18 Mar 2020 20:28:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359084 - in head/contrib/llvm-project/lld/ELF: . Arch X-SVN-Group: head X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in head/contrib/llvm-project/lld/ELF: . Arch X-SVN-Commit-Revision: 359084 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 20:28:28 -0000 Author: dim Date: Wed Mar 18 20:28:26 2020 New Revision: 359084 URL: https://svnweb.freebsd.org/changeset/base/359084 Log: Merge commit 00925aadb from llvm git (by Fangrui Song): [ELF][PPC32] Fix canonical PLTs when the order does not match the PLT order Reviewed By: Bdragon28 Differential Revision: https://reviews.llvm.org/D75394 This is needed to fix miscompiled canonical PLTs on ppc32/lld10. Requested by: bdragon MFC after: 6 weeks X-MFC-With: 358851 Differential Revision: https://reviews.freebsd.org/D24109 Modified: head/contrib/llvm-project/lld/ELF/Arch/PPC.cpp head/contrib/llvm-project/lld/ELF/Relocations.cpp head/contrib/llvm-project/lld/ELF/SyntheticSections.cpp head/contrib/llvm-project/lld/ELF/SyntheticSections.h head/contrib/llvm-project/lld/ELF/Writer.cpp Modified: head/contrib/llvm-project/lld/ELF/Arch/PPC.cpp ============================================================================== --- head/contrib/llvm-project/lld/ELF/Arch/PPC.cpp Wed Mar 18 20:12:46 2020 (r359083) +++ head/contrib/llvm-project/lld/ELF/Arch/PPC.cpp Wed Mar 18 20:28:26 2020 (r359084) @@ -71,12 +71,11 @@ void writePPC32GlinkSection(uint8_t *buf, size_t numEn // non-GOT-non-PLT relocations referencing external functions for -fpie/-fPIE. uint32_t glink = in.plt->getVA(); // VA of .glink if (!config->isPic) { - for (const Symbol *sym : in.plt->entries) - if (sym->needsPltAddr) { - writePPC32PltCallStub(buf, sym->getGotPltVA(), nullptr, 0); - buf += 16; - glink += 16; - } + for (const Symbol *sym : cast(in.plt)->canonical_plts) { + writePPC32PltCallStub(buf, sym->getGotPltVA(), nullptr, 0); + buf += 16; + glink += 16; + } } // On PPC Secure PLT ABI, bl foo@plt jumps to a call stub, which loads an Modified: head/contrib/llvm-project/lld/ELF/Relocations.cpp ============================================================================== --- head/contrib/llvm-project/lld/ELF/Relocations.cpp Wed Mar 18 20:12:46 2020 (r359083) +++ head/contrib/llvm-project/lld/ELF/Relocations.cpp Wed Mar 18 20:28:26 2020 (r359084) @@ -1206,6 +1206,7 @@ static void processRelocAux(InputSectionBase &sec, Rel // PPC32 canonical PLT entries are at the beginning of .glink cast(sym).value = in.plt->headerSize; in.plt->headerSize += 16; + cast(in.plt)->canonical_plts.push_back(&sym); } } sym.needsPltAddr = true; Modified: head/contrib/llvm-project/lld/ELF/SyntheticSections.cpp ============================================================================== --- head/contrib/llvm-project/lld/ELF/SyntheticSections.cpp Wed Mar 18 20:12:46 2020 (r359083) +++ head/contrib/llvm-project/lld/ELF/SyntheticSections.cpp Wed Mar 18 20:28:26 2020 (r359084) @@ -2446,12 +2446,9 @@ PltSection::PltSection() : SyntheticSection(SHF_ALLOC | SHF_EXECINSTR, SHT_PROGBITS, 16, ".plt"), headerSize(target->pltHeaderSize) { // On PowerPC, this section contains lazy symbol resolvers. - if (config->emachine == EM_PPC || config->emachine == EM_PPC64) { + if (config->emachine == EM_PPC64) { name = ".glink"; alignment = 4; - // PLTresolve is at the end. - if (config->emachine == EM_PPC) - footerSize = 64; } // On x86 when IBT is enabled, this section contains the second PLT (lazy @@ -2467,11 +2464,6 @@ PltSection::PltSection() } void PltSection::writeTo(uint8_t *buf) { - if (config->emachine == EM_PPC) { - writePPC32GlinkSection(buf, entries.size()); - return; - } - // At beginning of PLT, we have code to call the dynamic // linker to resolve dynsyms at runtime. Write such code. target->writePltHeader(buf); @@ -2489,7 +2481,7 @@ void PltSection::addEntry(Symbol &sym) { } size_t PltSection::getSize() const { - return headerSize + entries.size() * target->pltEntrySize + footerSize; + return headerSize + entries.size() * target->pltEntrySize; } bool PltSection::isNeeded() const { @@ -2541,6 +2533,19 @@ void IpltSection::addSymbols() { target->addPltSymbols(*this, off); off += target->pltEntrySize; } +} + +PPC32GlinkSection::PPC32GlinkSection() { + name = ".glink"; + alignment = 4; +} + +void PPC32GlinkSection::writeTo(uint8_t *buf) { + writePPC32GlinkSection(buf, entries.size()); +} + +size_t PPC32GlinkSection::getSize() const { + return headerSize + entries.size() * target->pltEntrySize + footerSize; } // This is an x86-only extra PLT section and used only when a security Modified: head/contrib/llvm-project/lld/ELF/SyntheticSections.h ============================================================================== --- head/contrib/llvm-project/lld/ELF/SyntheticSections.h Wed Mar 18 20:12:46 2020 (r359083) +++ head/contrib/llvm-project/lld/ELF/SyntheticSections.h Wed Mar 18 20:28:26 2020 (r359084) @@ -684,7 +684,6 @@ class PltSection : public SyntheticSection { (public) size_t getNumEntries() const { return entries.size(); } size_t headerSize; - size_t footerSize = 0; std::vector entries; }; @@ -703,6 +702,16 @@ class IpltSection final : public SyntheticSection { (p bool isNeeded() const override { return !entries.empty(); } void addSymbols(); void addEntry(Symbol &sym); +}; + +class PPC32GlinkSection : public PltSection { +public: + PPC32GlinkSection(); + void writeTo(uint8_t *buf) override; + size_t getSize() const override; + + std::vector canonical_plts; + static constexpr size_t footerSize = 64; }; // This is x86-only. Modified: head/contrib/llvm-project/lld/ELF/Writer.cpp ============================================================================== --- head/contrib/llvm-project/lld/ELF/Writer.cpp Wed Mar 18 20:12:46 2020 (r359083) +++ head/contrib/llvm-project/lld/ELF/Writer.cpp Wed Mar 18 20:28:26 2020 (r359084) @@ -521,7 +521,8 @@ template void createSyntheticSections() { add(in.ibtPlt); } - in.plt = make(); + in.plt = config->emachine == EM_PPC ? make() + : make(); add(in.plt); in.iplt = make(); add(in.iplt); From owner-svn-src-head@freebsd.org Wed Mar 18 20:36:34 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 3C5AD26C0EF; Wed, 18 Mar 2020 20:36:34 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48jMJd58qTz4Ddj; Wed, 18 Mar 2020 20:36:33 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kib@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id 02IKaIjU018685 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Wed, 18 Mar 2020 22:36:21 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 02IKaIjU018685 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id 02IKaIC1018684; Wed, 18 Mar 2020 22:36:18 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Wed, 18 Mar 2020 22:36:18 +0200 From: Konstantin Belousov To: Ian Lepore Cc: John Baldwin , Conrad Meyer , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r359053 - head/sys/kern Message-ID: <20200318203618.GF1992@kib.kiev.ua> References: <202003172227.02HMRHLM086023@repo.freebsd.org> <047c4edb4ff9fa6c40be6492c2f082e374f7a941.camel@freebsd.org> <96b14f0cff17b3367e3428dbcdc1bf12d7ab7356.camel@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <96b14f0cff17b3367e3428dbcdc1bf12d7ab7356.camel@freebsd.org> X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on tom.home X-Rspamd-Queue-Id: 48jMJd58qTz4Ddj X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-2.07 / 15.00]; REPLY(-4.00)[]; NEURAL_SPAM_LONG(0.97)[0.970,0]; NEURAL_SPAM_MEDIUM(0.96)[0.962,0] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 20:36:34 -0000 On Tue, Mar 17, 2020 at 07:25:01PM -0600, Ian Lepore wrote: > On Tue, 2020-03-17 at 17:05 -0700, John Baldwin wrote: > > On 3/17/20 3:36 PM, Ian Lepore wrote: > > > On Tue, 2020-03-17 at 22:27 +0000, Conrad Meyer wrote: > > > > Author: cem > > > > Date: Tue Mar 17 22:27:16 2020 > > > > New Revision: 359053 > > > > URL: https://svnweb.freebsd.org/changeset/base/359053 > > > > > > > > Log: > > > > Implement sysctl kern.boot_id > > > > > > > > Boot IDs are random, opaque 128-bit identifiers that > > > > distinguish distinct > > > > system boots. A new ID is generated each time the system > > > > boots. Unlike > > > > kern.boottime, the value is not modified by NTP > > > > adjustments. It remains fixed > > > > until the machine is restarted. > > > > > > > > PR: 244867 > > > > Reported by: Ricardo Fraile > > > > MFC after: I do not intend to, but feel free > > > > > > > > Modified: > > > > head/sys/kern/kern_mib.c > > > > > > > > Modified: head/sys/kern/kern_mib.c > > > > ================================================================= > > > > ============= > > > > --- head/sys/kern/kern_mib.c Tue Mar 17 21:29:03 2020 ( > > > > r359052) > > > > +++ head/sys/kern/kern_mib.c Tue Mar 17 22:27:16 2020 ( > > > > r359053) > > > > @@ -448,6 +448,32 @@ SYSCTL_PROC(_kern, KERN_HOSTID, hostid, > > > > CTLTYPE_ULONG | CTLFLAG_RW | CTLFLAG_PRISON | CTLFLAG_MPSAFE > > > > | CTLFLAG_CAPRD, > > > > NULL, 0, sysctl_hostid, "LU", "Host ID"); > > > > > > > > +static struct mtx bootid_lk; > > > > +MTX_SYSINIT(bootid_lock, &bootid_lk, "bootid generator lock", > > > > MTX_DEF); > > > > + > > > > +static int > > > > +sysctl_bootid(SYSCTL_HANDLER_ARGS) > > > > +{ > > > > + static uint8_t boot_id[16]; > > > > + static bool initialized = false; > > > > + > > > > + mtx_lock(&bootid_lk); > > > > + if (!initialized) { > > > > + if (!is_random_seeded()) { > > > > + mtx_unlock(&bootid_lk); > > > > + return (ENXIO); > > > > + } > > > > + arc4random_buf(boot_id, sizeof(boot_id)); > > > > + initialized = true; > > > > + } > > > > + mtx_unlock(&bootid_lk); > > > > + > > > > + return (SYSCTL_OUT(req, boot_id, sizeof(boot_id))); > > > > +} > > > > +SYSCTL_PROC(_kern, OID_AUTO, boot_id, > > > > + CTLTYPE_STRUCT | CTLFLAG_RD | CTLFLAG_MPSAFE | > > > > CTLFLAG_CAPRD, > > > > + NULL, 0, sysctl_bootid, "", "Random boot ID"); > > > > + > > > > /* > > > > * The osrelease string is copied from the global (osrelease in > > > > vers.c) into > > > > * prison0 by a sysinit and is inherited by child jails if notG > > > > changed at jail > > > > > > This seems a bit complex. Why run a sysinit to init a mutex so > > > that > > > you can safely do a lazy init of boot_id? Seems like it would be > > > much > > > easier to just use a sysinit at SI_SUB_LAST to init boot_id before > > > sysctl can reference it. > > > > Presumably you may not have enough entropy by SI_SUB_LAST to generate > > it? > > > > I thought arc4random in the kernel could provide random numbers > immediately (and definitely after jitter in device attachment times at > the end of kernel init)? This doesn't seem like the kind of thing that > needs crypto-strength randomness. I think that a large simplification can come from the random driver initializing the boot_id variable immediately before setting things so that is_random_seeded() start returning true. But even this might be too complex, Why not copy the value from the boottime on boot, and not ever touch it after. From owner-svn-src-head@freebsd.org Wed Mar 18 20:38:18 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7D8E426C46A; Wed, 18 Mar 2020 20:38:18 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jMLd05pyz4H1Y; Wed, 18 Mar 2020 20:38:16 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 846682797D; Wed, 18 Mar 2020 20:38:16 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IKcGpK093696; Wed, 18 Mar 2020 20:38:16 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IKcGue093694; Wed, 18 Mar 2020 20:38:16 GMT (envelope-from dim@FreeBSD.org) Message-Id: <202003182038.02IKcGue093694@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Wed, 18 Mar 2020 20:38:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359085 - head/contrib/llvm-project/lld/ELF X-SVN-Group: head X-SVN-Commit-Author: dim X-SVN-Commit-Paths: head/contrib/llvm-project/lld/ELF X-SVN-Commit-Revision: 359085 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 20:38:18 -0000 Author: dim Date: Wed Mar 18 20:38:15 2020 New Revision: 359085 URL: https://svnweb.freebsd.org/changeset/base/359085 Log: Merge commit 315f8a55f from llvm git (by Fangrui Song): [ELF][PPC32] Don't report "relocation refers to a discarded section" for .got2 Similar to D63182 [ELF][PPC64] Don't report "relocation refers to a discarded section" for .toc Reviewed By: Bdragon28 Differential Revision: https://reviews.llvm.org/D75419 This is needed to fix compile errors when building for ppc32/lld10. Requested by: bdragon MFC after: 6 weeks X-MFC-With: 358851 Differential Revision: https://reviews.freebsd.org/D24110 Modified: head/contrib/llvm-project/lld/ELF/InputSection.cpp head/contrib/llvm-project/lld/ELF/Relocations.cpp Modified: head/contrib/llvm-project/lld/ELF/InputSection.cpp ============================================================================== --- head/contrib/llvm-project/lld/ELF/InputSection.cpp Wed Mar 18 20:28:26 2020 (r359084) +++ head/contrib/llvm-project/lld/ELF/InputSection.cpp Wed Mar 18 20:38:15 2020 (r359085) @@ -438,12 +438,13 @@ void InputSection::copyRelocations(uint8_t *buf, Array // hopefully creates a frame that is ignored at runtime. Also, don't warn // on .gcc_except_table and debug sections. // - // See the comment in maybeReportUndefined for PPC64 .toc . + // See the comment in maybeReportUndefined for PPC32 .got2 and PPC64 .toc auto *d = dyn_cast(&sym); if (!d) { if (!sec->name.startswith(".debug") && !sec->name.startswith(".zdebug") && sec->name != ".eh_frame" && - sec->name != ".gcc_except_table" && sec->name != ".toc") { + sec->name != ".gcc_except_table" && sec->name != ".got2" && + sec->name != ".toc") { uint32_t secIdx = cast(sym).discardedSecIdx; Elf_Shdr_Impl sec = CHECK(file->getObj().sections(), file)[secIdx]; Modified: head/contrib/llvm-project/lld/ELF/Relocations.cpp ============================================================================== --- head/contrib/llvm-project/lld/ELF/Relocations.cpp Wed Mar 18 20:28:26 2020 (r359084) +++ head/contrib/llvm-project/lld/ELF/Relocations.cpp Wed Mar 18 20:38:15 2020 (r359085) @@ -926,8 +926,12 @@ static bool maybeReportUndefined(Symbol &sym, InputSec // .toc and the .rela.toc are incorrectly not placed in the comdat. The ELF // spec says references from outside the group to a STB_LOCAL symbol are not // allowed. Work around the bug. - if (config->emachine == EM_PPC64 && - cast(sym).discardedSecIdx != 0 && sec.name == ".toc") + // + // PPC32 .got2 is similar but cannot be fixed. Multiple .got2 is infeasible + // because .LC0-.LTOC is not representable if the two labels are in different + // .got2 + if (cast(sym).discardedSecIdx != 0 && + (sec.name == ".got2" || sec.name == ".toc")) return false; bool isWarning = From owner-svn-src-head@freebsd.org Wed Mar 18 20:44:42 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7A41826CE23; Wed, 18 Mar 2020 20:44:42 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jMV16djlz4Q7s; Wed, 18 Mar 2020 20:44:41 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D67F027B55; Wed, 18 Mar 2020 20:44:40 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IKiene099727; Wed, 18 Mar 2020 20:44:40 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IKieL7099726; Wed, 18 Mar 2020 20:44:40 GMT (envelope-from dim@FreeBSD.org) Message-Id: <202003182044.02IKieL7099726@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Wed, 18 Mar 2020 20:44:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359086 - head/contrib/llvm-project/llvm/lib/Transforms/Scalar X-SVN-Group: head X-SVN-Commit-Author: dim X-SVN-Commit-Paths: head/contrib/llvm-project/llvm/lib/Transforms/Scalar X-SVN-Commit-Revision: 359086 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 20:44:42 -0000 Author: dim Date: Wed Mar 18 20:44:40 2020 New Revision: 359086 URL: https://svnweb.freebsd.org/changeset/base/359086 Log: Merge commit b8ebc11f0 from llvm git (by Sanjay Patel): [EarlyCSE] avoid crashing when detecting min/max/abs patterns (PR41083) As discussed in PR41083: https://bugs.llvm.org/show_bug.cgi?id=41083 ...we can assert/crash in EarlyCSE using the current hashing scheme and instructions with flags. ValueTracking's matchSelectPattern() may rely on overflow (nsw, etc) or other flags when detecting patterns such as min/max/abs composed of compare+select. But the value numbering / hashing mechanism used by EarlyCSE intersects those flags to allow more CSE. Several alternatives to solve this are discussed in the bug report. This patch avoids the issue by doing simple matching of min/max/abs patterns that never requires instruction flags. We give up some CSE power because of that, but that is not expected to result in much actual performance difference because InstCombine will canonicalize these patterns when possible. It even has this comment for abs/nabs: /// Canonicalize all these variants to 1 pattern. /// This makes CSE more likely. (And this patch adds PhaseOrdering tests to verify that the expected transforms are still happening in the standard optimization pipelines. I left this code to use ValueTracking's "flavor" enum values, so we don't have to change the callers' code. If we decide to go back to using the ValueTracking call (by changing the hashing algorithm instead), it should be obvious how to replace this chunk. Differential Revision: https://reviews.llvm.org/D74285 This fixes an assertion when building the math/gsl port on PowerPC64. Requested by: pkubja MFC after: 6 weeks X-MFC-With: 358851 Modified: head/contrib/llvm-project/llvm/lib/Transforms/Scalar/EarlyCSE.cpp Modified: head/contrib/llvm-project/llvm/lib/Transforms/Scalar/EarlyCSE.cpp ============================================================================== --- head/contrib/llvm-project/llvm/lib/Transforms/Scalar/EarlyCSE.cpp Wed Mar 18 20:38:15 2020 (r359085) +++ head/contrib/llvm-project/llvm/lib/Transforms/Scalar/EarlyCSE.cpp Wed Mar 18 20:44:40 2020 (r359086) @@ -152,13 +152,50 @@ static bool matchSelectWithOptionalNotCond(Value *V, V std::swap(A, B); } - // Set flavor if we find a match, or set it to unknown otherwise; in - // either case, return true to indicate that this is a select we can - // process. - if (auto *CmpI = dyn_cast(Cond)) - Flavor = matchDecomposedSelectPattern(CmpI, A, B, A, B).Flavor; - else - Flavor = SPF_UNKNOWN; + // Match canonical forms of abs/nabs/min/max. We are not using ValueTracking's + // more powerful matchSelectPattern() because it may rely on instruction flags + // such as "nsw". That would be incompatible with the current hashing + // mechanism that may remove flags to increase the likelihood of CSE. + + // These are the canonical forms of abs(X) and nabs(X) created by instcombine: + // %N = sub i32 0, %X + // %C = icmp slt i32 %X, 0 + // %ABS = select i1 %C, i32 %N, i32 %X + // + // %N = sub i32 0, %X + // %C = icmp slt i32 %X, 0 + // %NABS = select i1 %C, i32 %X, i32 %N + Flavor = SPF_UNKNOWN; + CmpInst::Predicate Pred; + if (match(Cond, m_ICmp(Pred, m_Specific(B), m_ZeroInt())) && + Pred == ICmpInst::ICMP_SLT && match(A, m_Neg(m_Specific(B)))) { + // ABS: B < 0 ? -B : B + Flavor = SPF_ABS; + return true; + } + if (match(Cond, m_ICmp(Pred, m_Specific(A), m_ZeroInt())) && + Pred == ICmpInst::ICMP_SLT && match(B, m_Neg(m_Specific(A)))) { + // NABS: A < 0 ? A : -A + Flavor = SPF_NABS; + return true; + } + + if (!match(Cond, m_ICmp(Pred, m_Specific(A), m_Specific(B)))) { + // Check for commuted variants of min/max by swapping predicate. + // If we do not match the standard or commuted patterns, this is not a + // recognized form of min/max, but it is still a select, so return true. + if (!match(Cond, m_ICmp(Pred, m_Specific(B), m_Specific(A)))) + return true; + Pred = ICmpInst::getSwappedPredicate(Pred); + } + + switch (Pred) { + case CmpInst::ICMP_UGT: Flavor = SPF_UMAX; break; + case CmpInst::ICMP_ULT: Flavor = SPF_UMIN; break; + case CmpInst::ICMP_SGT: Flavor = SPF_SMAX; break; + case CmpInst::ICMP_SLT: Flavor = SPF_SMIN; break; + default: break; + } return true; } From owner-svn-src-head@freebsd.org Wed Mar 18 20:50:33 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 1540926CF67; Wed, 18 Mar 2020 20:50:33 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jMcm5WVcz4Z1K; Wed, 18 Mar 2020 20:50:32 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6C8F327BA9; Wed, 18 Mar 2020 20:50:32 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IKoW0W000199; Wed, 18 Mar 2020 20:50:32 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IKoUJA000186; Wed, 18 Mar 2020 20:50:30 GMT (envelope-from dim@FreeBSD.org) Message-Id: <202003182050.02IKoUJA000186@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Wed, 18 Mar 2020 20:50:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359087 - head/contrib/llvm-project/libcxx/include X-SVN-Group: head X-SVN-Commit-Author: dim X-SVN-Commit-Paths: head/contrib/llvm-project/libcxx/include X-SVN-Commit-Revision: 359087 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 20:50:33 -0000 Author: dim Date: Wed Mar 18 20:50:30 2020 New Revision: 359087 URL: https://svnweb.freebsd.org/changeset/base/359087 Log: Merge commit 585a3cc31 from llvm git (by me): Fix -Wdeprecated-copy-dtor and -Wdeprecated-dynamic-exception-spec warnings. Summary: The former are like: libcxx/include/typeinfo:322:11: warning: definition of implicit copy constructor for 'bad_cast' is deprecated because it has a user-declared destructor [-Wdeprecated-copy-dtor] virtual ~bad_cast() _NOEXCEPT; ^ libcxx/include/typeinfo:344:11: note: in implicit copy constructor for 'std::bad_cast' first required here throw bad_cast(); ^ Fix these by adding an explicitly defaulted copy constructor. The latter are like: libcxx/include/codecvt:105:37: warning: dynamic exception specifications are deprecated [-Wdeprecated-dynamic-exception-spec] virtual int do_encoding() const throw(); ^~~~~~~ Fix these by using the _NOEXCEPT macro instead. Reviewers: EricWF, mclow.lists, ldionne, #libc Reviewed By: EricWF, #libc Subscribers: dexonsmith, libcxx-commits Tags: #libc Differential Revision: https://reviews.llvm.org/D76150 This is because we use -Wsystem-headers during buildworld, and the two warnings above are now triggered by default with clang 10, preventing most C++ code from compiling without NO_WERROR. Requested by: brooks MFC after: 6 weeks X-MFC-With: 358851 Differential Revision: https://reviews.freebsd.org/D24049 Modified: head/contrib/llvm-project/libcxx/include/codecvt head/contrib/llvm-project/libcxx/include/exception head/contrib/llvm-project/libcxx/include/filesystem head/contrib/llvm-project/libcxx/include/future head/contrib/llvm-project/libcxx/include/ios head/contrib/llvm-project/libcxx/include/memory head/contrib/llvm-project/libcxx/include/regex head/contrib/llvm-project/libcxx/include/stdexcept head/contrib/llvm-project/libcxx/include/system_error head/contrib/llvm-project/libcxx/include/typeinfo Modified: head/contrib/llvm-project/libcxx/include/codecvt ============================================================================== --- head/contrib/llvm-project/libcxx/include/codecvt Wed Mar 18 20:44:40 2020 (r359086) +++ head/contrib/llvm-project/libcxx/include/codecvt Wed Mar 18 20:50:30 2020 (r359087) @@ -102,11 +102,11 @@ class _LIBCPP_TYPE_VIS __codecvt_utf8 (protec virtual result do_unshift(state_type& __st, extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const; - virtual int do_encoding() const throw(); - virtual bool do_always_noconv() const throw(); + virtual int do_encoding() const _NOEXCEPT; + virtual bool do_always_noconv() const _NOEXCEPT; virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const; - virtual int do_max_length() const throw(); + virtual int do_max_length() const _NOEXCEPT; }; template <> @@ -137,11 +137,11 @@ class _LIBCPP_TYPE_VIS __codecvt_utf8 (prote virtual result do_unshift(state_type& __st, extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const; - virtual int do_encoding() const throw(); - virtual bool do_always_noconv() const throw(); + virtual int do_encoding() const _NOEXCEPT; + virtual bool do_always_noconv() const _NOEXCEPT; virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const; - virtual int do_max_length() const throw(); + virtual int do_max_length() const _NOEXCEPT; }; template <> @@ -172,11 +172,11 @@ class _LIBCPP_TYPE_VIS __codecvt_utf8 (prote virtual result do_unshift(state_type& __st, extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const; - virtual int do_encoding() const throw(); - virtual bool do_always_noconv() const throw(); + virtual int do_encoding() const _NOEXCEPT; + virtual bool do_always_noconv() const _NOEXCEPT; virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const; - virtual int do_max_length() const throw(); + virtual int do_max_length() const _NOEXCEPT; }; template virtual result do_unshift(state_type& __st, extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const; - virtual int do_encoding() const throw(); - virtual bool do_always_noconv() const throw(); + virtual int do_encoding() const _NOEXCEPT; + virtual bool do_always_noconv() const _NOEXCEPT; virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const; - virtual int do_max_length() const throw(); + virtual int do_max_length() const _NOEXCEPT; }; template <> @@ -260,11 +260,11 @@ class _LIBCPP_TYPE_VIS __codecvt_utf16 virtual result do_unshift(state_type& __st, extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const; - virtual int do_encoding() const throw(); - virtual bool do_always_noconv() const throw(); + virtual int do_encoding() const _NOEXCEPT; + virtual bool do_always_noconv() const _NOEXCEPT; virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const; - virtual int do_max_length() const throw(); + virtual int do_max_length() const _NOEXCEPT; }; template <> @@ -295,11 +295,11 @@ class _LIBCPP_TYPE_VIS __codecvt_utf16 @@ -330,11 +330,11 @@ class _LIBCPP_TYPE_VIS __codecvt_utf16 virtual result do_unshift(state_type& __st, extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const; - virtual int do_encoding() const throw(); - virtual bool do_always_noconv() const throw(); + virtual int do_encoding() const _NOEXCEPT; + virtual bool do_always_noconv() const _NOEXCEPT; virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const; - virtual int do_max_length() const throw(); + virtual int do_max_length() const _NOEXCEPT; }; template <> @@ -365,11 +365,11 @@ class _LIBCPP_TYPE_VIS __codecvt_utf16 @@ -400,11 +400,11 @@ class _LIBCPP_TYPE_VIS __codecvt_utf16 virtual result do_unshift(state_type& __st, extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const; - virtual int do_encoding() const throw(); - virtual bool do_always_noconv() const throw(); + virtual int do_encoding() const _NOEXCEPT; + virtual bool do_always_noconv() const _NOEXCEPT; virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const; - virtual int do_max_length() const throw(); + virtual int do_max_length() const _NOEXCEPT; }; template ( virtual result do_unshift(state_type& __st, extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const; - virtual int do_encoding() const throw(); - virtual bool do_always_noconv() const throw(); + virtual int do_encoding() const _NOEXCEPT; + virtual bool do_always_noconv() const _NOEXCEPT; virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const; - virtual int do_max_length() const throw(); + virtual int do_max_length() const _NOEXCEPT; }; template <> @@ -488,11 +488,11 @@ class _LIBCPP_TYPE_VIS __codecvt_utf8_utf16 virtual result do_unshift(state_type& __st, extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const; - virtual int do_encoding() const throw(); - virtual bool do_always_noconv() const throw(); + virtual int do_encoding() const _NOEXCEPT; + virtual bool do_always_noconv() const _NOEXCEPT; virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const; - virtual int do_max_length() const throw(); + virtual int do_max_length() const _NOEXCEPT; }; template <> @@ -523,11 +523,11 @@ class _LIBCPP_TYPE_VIS __codecvt_utf8_utf16 virtual result do_unshift(state_type& __st, extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const; - virtual int do_encoding() const throw(); - virtual bool do_always_noconv() const throw(); + virtual int do_encoding() const _NOEXCEPT; + virtual bool do_always_noconv() const _NOEXCEPT; virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const; - virtual int do_max_length() const throw(); + virtual int do_max_length() const _NOEXCEPT; }; template __p2_; } + filesystem_error(const filesystem_error&) = default; ~filesystem_error() override; // key function _LIBCPP_INLINE_VISIBILITY Modified: head/contrib/llvm-project/libcxx/include/future ============================================================================== --- head/contrib/llvm-project/libcxx/include/future Wed Mar 18 20:44:40 2020 (r359086) +++ head/contrib/llvm-project/libcxx/include/future Wed Mar 18 20:50:30 2020 (r359087) @@ -506,6 +506,7 @@ class _LIBCPP_EXCEPTION_ABI _LIBCPP_AVAILABILITY_FUTUR _LIBCPP_INLINE_VISIBILITY const error_code& code() const _NOEXCEPT {return __ec_;} + future_error(const future_error&) _NOEXCEPT = default; virtual ~future_error() _NOEXCEPT; }; Modified: head/contrib/llvm-project/libcxx/include/ios ============================================================================== --- head/contrib/llvm-project/libcxx/include/ios Wed Mar 18 20:44:40 2020 (r359086) +++ head/contrib/llvm-project/libcxx/include/ios Wed Mar 18 20:50:30 2020 (r359087) @@ -431,7 +431,8 @@ class _LIBCPP_EXCEPTION_ABI ios_base::failure public: explicit failure(const string& __msg, const error_code& __ec = io_errc::stream); explicit failure(const char* __msg, const error_code& __ec = io_errc::stream); - virtual ~failure() throw(); + failure(const failure&) _NOEXCEPT = default; + virtual ~failure() _NOEXCEPT; }; _LIBCPP_NORETURN inline _LIBCPP_INLINE_VISIBILITY Modified: head/contrib/llvm-project/libcxx/include/memory ============================================================================== --- head/contrib/llvm-project/libcxx/include/memory Wed Mar 18 20:44:40 2020 (r359086) +++ head/contrib/llvm-project/libcxx/include/memory Wed Mar 18 20:50:30 2020 (r359087) @@ -2134,39 +2134,39 @@ class _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX11 public: typedef _Tp element_type; - _LIBCPP_INLINE_VISIBILITY explicit auto_ptr(_Tp* __p = 0) throw() : __ptr_(__p) {} - _LIBCPP_INLINE_VISIBILITY auto_ptr(auto_ptr& __p) throw() : __ptr_(__p.release()) {} - template _LIBCPP_INLINE_VISIBILITY auto_ptr(auto_ptr<_Up>& __p) throw() + _LIBCPP_INLINE_VISIBILITY explicit auto_ptr(_Tp* __p = 0) _NOEXCEPT : __ptr_(__p) {} + _LIBCPP_INLINE_VISIBILITY auto_ptr(auto_ptr& __p) _NOEXCEPT : __ptr_(__p.release()) {} + template _LIBCPP_INLINE_VISIBILITY auto_ptr(auto_ptr<_Up>& __p) _NOEXCEPT : __ptr_(__p.release()) {} - _LIBCPP_INLINE_VISIBILITY auto_ptr& operator=(auto_ptr& __p) throw() + _LIBCPP_INLINE_VISIBILITY auto_ptr& operator=(auto_ptr& __p) _NOEXCEPT {reset(__p.release()); return *this;} - template _LIBCPP_INLINE_VISIBILITY auto_ptr& operator=(auto_ptr<_Up>& __p) throw() + template _LIBCPP_INLINE_VISIBILITY auto_ptr& operator=(auto_ptr<_Up>& __p) _NOEXCEPT {reset(__p.release()); return *this;} - _LIBCPP_INLINE_VISIBILITY auto_ptr& operator=(auto_ptr_ref<_Tp> __p) throw() + _LIBCPP_INLINE_VISIBILITY auto_ptr& operator=(auto_ptr_ref<_Tp> __p) _NOEXCEPT {reset(__p.__ptr_); return *this;} - _LIBCPP_INLINE_VISIBILITY ~auto_ptr() throw() {delete __ptr_;} + _LIBCPP_INLINE_VISIBILITY ~auto_ptr() _NOEXCEPT {delete __ptr_;} - _LIBCPP_INLINE_VISIBILITY _Tp& operator*() const throw() + _LIBCPP_INLINE_VISIBILITY _Tp& operator*() const _NOEXCEPT {return *__ptr_;} - _LIBCPP_INLINE_VISIBILITY _Tp* operator->() const throw() {return __ptr_;} - _LIBCPP_INLINE_VISIBILITY _Tp* get() const throw() {return __ptr_;} - _LIBCPP_INLINE_VISIBILITY _Tp* release() throw() + _LIBCPP_INLINE_VISIBILITY _Tp* operator->() const _NOEXCEPT {return __ptr_;} + _LIBCPP_INLINE_VISIBILITY _Tp* get() const _NOEXCEPT {return __ptr_;} + _LIBCPP_INLINE_VISIBILITY _Tp* release() _NOEXCEPT { _Tp* __t = __ptr_; __ptr_ = 0; return __t; } - _LIBCPP_INLINE_VISIBILITY void reset(_Tp* __p = 0) throw() + _LIBCPP_INLINE_VISIBILITY void reset(_Tp* __p = 0) _NOEXCEPT { if (__ptr_ != __p) delete __ptr_; __ptr_ = __p; } - _LIBCPP_INLINE_VISIBILITY auto_ptr(auto_ptr_ref<_Tp> __p) throw() : __ptr_(__p.__ptr_) {} - template _LIBCPP_INLINE_VISIBILITY operator auto_ptr_ref<_Up>() throw() + _LIBCPP_INLINE_VISIBILITY auto_ptr(auto_ptr_ref<_Tp> __p) _NOEXCEPT : __ptr_(__p.__ptr_) {} + template _LIBCPP_INLINE_VISIBILITY operator auto_ptr_ref<_Up>() _NOEXCEPT {auto_ptr_ref<_Up> __t; __t.__ptr_ = release(); return __t;} - template _LIBCPP_INLINE_VISIBILITY operator auto_ptr<_Up>() throw() + template _LIBCPP_INLINE_VISIBILITY operator auto_ptr<_Up>() _NOEXCEPT {return auto_ptr<_Up>(release());} }; @@ -3393,6 +3393,8 @@ class _LIBCPP_EXCEPTION_ABI bad_weak_ptr : public std::exception { public: + bad_weak_ptr() _NOEXCEPT = default; + bad_weak_ptr(const bad_weak_ptr&) _NOEXCEPT = default; virtual ~bad_weak_ptr() _NOEXCEPT; virtual const char* what() const _NOEXCEPT; }; Modified: head/contrib/llvm-project/libcxx/include/regex ============================================================================== --- head/contrib/llvm-project/libcxx/include/regex Wed Mar 18 20:44:40 2020 (r359086) +++ head/contrib/llvm-project/libcxx/include/regex Wed Mar 18 20:50:30 2020 (r359087) @@ -977,7 +977,8 @@ class _LIBCPP_EXCEPTION_ABI regex_error regex_constants::error_type __code_; public: explicit regex_error(regex_constants::error_type __ecode); - virtual ~regex_error() throw(); + regex_error(const regex_error&) _NOEXCEPT = default; + virtual ~regex_error() _NOEXCEPT; _LIBCPP_INLINE_VISIBILITY regex_constants::error_type code() const {return __code_;} }; Modified: head/contrib/llvm-project/libcxx/include/stdexcept ============================================================================== --- head/contrib/llvm-project/libcxx/include/stdexcept Wed Mar 18 20:44:40 2020 (r359086) +++ head/contrib/llvm-project/libcxx/include/stdexcept Wed Mar 18 20:50:30 2020 (r359087) @@ -129,6 +129,7 @@ class _LIBCPP_EXCEPTION_ABI domain_error (public) _LIBCPP_INLINE_VISIBILITY explicit domain_error(const char* __s) : logic_error(__s) {} #ifndef _LIBCPP_ABI_VCRUNTIME + domain_error(const domain_error&) _NOEXCEPT = default; virtual ~domain_error() _NOEXCEPT; #endif }; @@ -141,6 +142,7 @@ class _LIBCPP_EXCEPTION_ABI invalid_argument (public) _LIBCPP_INLINE_VISIBILITY explicit invalid_argument(const char* __s) : logic_error(__s) {} #ifndef _LIBCPP_ABI_VCRUNTIME + invalid_argument(const invalid_argument&) _NOEXCEPT = default; virtual ~invalid_argument() _NOEXCEPT; #endif }; @@ -152,6 +154,7 @@ class _LIBCPP_EXCEPTION_ABI length_error (public) _LIBCPP_INLINE_VISIBILITY explicit length_error(const string& __s) : logic_error(__s) {} _LIBCPP_INLINE_VISIBILITY explicit length_error(const char* __s) : logic_error(__s) {} #ifndef _LIBCPP_ABI_VCRUNTIME + length_error(const length_error&) _NOEXCEPT = default; virtual ~length_error() _NOEXCEPT; #endif }; @@ -164,6 +167,7 @@ class _LIBCPP_EXCEPTION_ABI out_of_range (public) _LIBCPP_INLINE_VISIBILITY explicit out_of_range(const char* __s) : logic_error(__s) {} #ifndef _LIBCPP_ABI_VCRUNTIME + out_of_range(const out_of_range&) _NOEXCEPT = default; virtual ~out_of_range() _NOEXCEPT; #endif }; @@ -176,6 +180,7 @@ class _LIBCPP_EXCEPTION_ABI range_error (public) _LIBCPP_INLINE_VISIBILITY explicit range_error(const char* __s) : runtime_error(__s) {} #ifndef _LIBCPP_ABI_VCRUNTIME + range_error(const range_error&) _NOEXCEPT = default; virtual ~range_error() _NOEXCEPT; #endif }; @@ -188,6 +193,7 @@ class _LIBCPP_EXCEPTION_ABI overflow_error (public) _LIBCPP_INLINE_VISIBILITY explicit overflow_error(const char* __s) : runtime_error(__s) {} #ifndef _LIBCPP_ABI_VCRUNTIME + overflow_error(const overflow_error&) _NOEXCEPT = default; virtual ~overflow_error() _NOEXCEPT; #endif }; @@ -200,6 +206,7 @@ class _LIBCPP_EXCEPTION_ABI underflow_error (public) _LIBCPP_INLINE_VISIBILITY explicit underflow_error(const char* __s) : runtime_error(__s) {} #ifndef _LIBCPP_ABI_VCRUNTIME + underflow_error(const underflow_error&) _NOEXCEPT = default; virtual ~underflow_error() _NOEXCEPT; #endif }; Modified: head/contrib/llvm-project/libcxx/include/system_error ============================================================================== --- head/contrib/llvm-project/libcxx/include/system_error Wed Mar 18 20:44:40 2020 (r359086) +++ head/contrib/llvm-project/libcxx/include/system_error Wed Mar 18 20:50:30 2020 (r359087) @@ -469,6 +469,7 @@ class _LIBCPP_TYPE_VIS system_error (public) system_error(int __ev, const error_category& __ecat, const string& __what_arg); system_error(int __ev, const error_category& __ecat, const char* __what_arg); system_error(int __ev, const error_category& __ecat); + system_error(const system_error&) _NOEXCEPT = default; ~system_error() _NOEXCEPT; _LIBCPP_INLINE_VISIBILITY Modified: head/contrib/llvm-project/libcxx/include/typeinfo ============================================================================== --- head/contrib/llvm-project/libcxx/include/typeinfo Wed Mar 18 20:44:40 2020 (r359086) +++ head/contrib/llvm-project/libcxx/include/typeinfo Wed Mar 18 20:50:30 2020 (r359087) @@ -318,6 +318,7 @@ class _LIBCPP_EXCEPTION_ABI bad_cast { public: bad_cast() _NOEXCEPT; + bad_cast(const bad_cast&) _NOEXCEPT = default; virtual ~bad_cast() _NOEXCEPT; virtual const char* what() const _NOEXCEPT; }; From owner-svn-src-head@freebsd.org Wed Mar 18 21:15:46 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 71EE726D653; Wed, 18 Mar 2020 21:15:46 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jN9t0p9Hz4VWs; Wed, 18 Mar 2020 21:15:46 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D9DC8163; Wed, 18 Mar 2020 21:15:45 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02ILFj0R018050; Wed, 18 Mar 2020 21:15:45 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02ILFj2O018049; Wed, 18 Mar 2020 21:15:45 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003182115.02ILFj2O018049@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Wed, 18 Mar 2020 21:15:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359088 - head/share/mk X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/share/mk X-SVN-Commit-Revision: 359088 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 21:15:46 -0000 Author: emaste Date: Wed Mar 18 21:15:45 2020 New Revision: 359088 URL: https://svnweb.freebsd.org/changeset/base/359088 Log: src.opts.mk: drop C++11 compiler conditional from OPENMP We no longer support older C++ compilers, so do not need to explicitly test for C++11 support. After r339946 we stopped running `cc --version` during cleandir/obj stages, so stopped setting COMPILER_FEATURES. This in turn meant lib/libomp was excluded from the clean stage in a normal buildworld (i.e., one without -DNO_CLEAN), and this is what caused recent build failures with errors about missing ittnotify_static.c. This commit should obviate the need for the workaround committed in r359083. Thanks to bdrewery for the insight and for pushing for a correct fix. There are more cleanups to be done, but this change is a simplification and an improvement over r359083. Sponsored by: The FreeBSD Foundation Modified: head/share/mk/src.opts.mk Modified: head/share/mk/src.opts.mk ============================================================================== --- head/share/mk/src.opts.mk Wed Mar 18 20:50:30 2020 (r359087) +++ head/share/mk/src.opts.mk Wed Mar 18 21:15:45 2020 (r359088) @@ -377,8 +377,7 @@ BROKEN_OPTIONS+=HYPERV BROKEN_OPTIONS+=NVME .endif -.if ${COMPILER_FEATURES:Mc++11} && \ - (${__T} == "amd64" || ${__T} == "i386" || ${__T} == "powerpc64") +.if ${__T} == "amd64" || ${__T} == "i386" || ${__T} == "powerpc64" __DEFAULT_YES_OPTIONS+=OPENMP .else __DEFAULT_NO_OPTIONS+=OPENMP From owner-svn-src-head@freebsd.org Wed Mar 18 21:20:12 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7983026D79D; Wed, 18 Mar 2020 21:20:12 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jNGz6bQmz3Cyr; Wed, 18 Mar 2020 21:20:11 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 68BE216C; Wed, 18 Mar 2020 21:20:11 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02ILKBYN018366; Wed, 18 Mar 2020 21:20:11 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02ILKBhS018365; Wed, 18 Mar 2020 21:20:11 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003182120.02ILKBhS018365@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Wed, 18 Mar 2020 21:20:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359089 - head X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head X-SVN-Commit-Revision: 359089 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 21:20:12 -0000 Author: emaste Date: Wed Mar 18 21:20:10 2020 New Revision: 359089 URL: https://svnweb.freebsd.org/changeset/base/359089 Log: Revert r359083, fixed properly by r359088 r359083 introduced a workaround for stale libomp dependencies during a regular (no -DNO_CLEAN) buildworld. r359088 addressed the reason the clean step missed libomp, so revert the workaround. Sponsored by: The FreeBSD Foundation Modified: head/Makefile.inc1 Modified: head/Makefile.inc1 ============================================================================== --- head/Makefile.inc1 Wed Mar 18 21:15:45 2020 (r359088) +++ head/Makefile.inc1 Wed Mar 18 21:20:10 2020 (r359089) @@ -1082,10 +1082,9 @@ _cleanobj: .if defined(_LIBCOMPAT) ${_+_}cd ${.CURDIR}; ${LIBCOMPATWMAKE} _NO_INCLUDE_COMPILERMK=t -f Makefile.inc1 ${CLEANDIR} .endif -.endif # !defined(NO_CLEAN) - # XXX make cleandir left stale .depend files behind, so invoke the - # dependency cleanup hack unconditionally. +.else ${_+_}cd ${.CURDIR}; ${WMAKE} _NO_INCLUDE_COMPILERMK=t _cleanobj_fast_depend_hack +.endif # !defined(NO_CLEAN) _obj: @echo @echo "--------------------------------------------------------------" From owner-svn-src-head@freebsd.org Wed Mar 18 21:24:35 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id AC30426D9E9; Wed, 18 Mar 2020 21:24:35 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jNN32dF2z3Ppx; Wed, 18 Mar 2020 21:24:35 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 368CD34D; Wed, 18 Mar 2020 21:24:35 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02ILOZQh023792; Wed, 18 Mar 2020 21:24:35 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02ILOZOj023791; Wed, 18 Mar 2020 21:24:35 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003182124.02ILOZOj023791@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 18 Mar 2020 21:24:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359090 - head/sys/x86/x86 X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/x86/x86 X-SVN-Commit-Revision: 359090 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 21:24:35 -0000 Author: kib Date: Wed Mar 18 21:24:34 2020 New Revision: 359090 URL: https://svnweb.freebsd.org/changeset/base/359090 Log: Widen the stored io_apic_id to 8 bits. It seems that the newer Intel chipset did that, and Linux reads 8 bits. The only detail is that all seen datasheets, even under NDA, claim that io apic id is 4 bits. Submitted by: jeff Reviewed by: jhb Tested by: flo, pho MFC after: 2 weeks Differential revision: https://reviews.freebsd.org/D23965 Modified: head/sys/x86/x86/io_apic.c Modified: head/sys/x86/x86/io_apic.c ============================================================================== --- head/sys/x86/x86/io_apic.c Wed Mar 18 21:20:10 2020 (r359089) +++ head/sys/x86/x86/io_apic.c Wed Mar 18 21:24:34 2020 (r359090) @@ -94,7 +94,7 @@ struct ioapic_intsrc { struct ioapic { struct pic io_pic; u_int io_id:8; /* logical ID */ - u_int io_apic_id:4; + u_int io_apic_id:8; u_int io_intbase:8; /* System Interrupt base */ u_int io_numintr:8; u_int io_haseoi:1; From owner-svn-src-head@freebsd.org Wed Mar 18 21:28:56 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 2EBBD26DAAB; Wed, 18 Mar 2020 21:28:56 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jNT36GBgz45Tw; Wed, 18 Mar 2020 21:28:55 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id BCAF1355; Wed, 18 Mar 2020 21:28:55 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02ILStoo024050; Wed, 18 Mar 2020 21:28:55 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02ILStwR024049; Wed, 18 Mar 2020 21:28:55 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003182128.02ILStwR024049@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Wed, 18 Mar 2020 21:28:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359091 - head/share/mk X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/share/mk X-SVN-Commit-Revision: 359091 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 21:28:56 -0000 Author: emaste Date: Wed Mar 18 21:28:55 2020 New Revision: 359091 URL: https://svnweb.freebsd.org/changeset/base/359091 Log: src.opts.mk: remove remaining support for pre-C++11 C++ compilers Delete the conditions that forcibly disabled GOOGLETEST and LLDB for pre-C++11 C++ compilers, since we no longer support such compilers. Also delete the complicated method of defaulting LIBCPLUSPLUS to YES. Prodded by: kevans Sponsored by: The FreeBSD Foundation Modified: head/share/mk/src.opts.mk Modified: head/share/mk/src.opts.mk ============================================================================== --- head/share/mk/src.opts.mk Wed Mar 18 21:24:34 2020 (r359090) +++ head/share/mk/src.opts.mk Wed Mar 18 21:28:55 2020 (r359091) @@ -125,6 +125,7 @@ __DEFAULT_YES_OPTIONS = \ LDNS \ LDNS_UTILS \ LEGACY_CONSOLE \ + LIBCPLUSPLUS \ LIBPTHREAD \ LIBTHR \ LLD \ @@ -386,35 +387,9 @@ __DEFAULT_NO_OPTIONS+=OPENMP .include # -# MK_* options that default to "yes" if the compiler is a C++11 compiler. -# -.for var in \ - LIBCPLUSPLUS -.if !defined(MK_${var}) -.if ${COMPILER_FEATURES:Mc++11} -.if defined(WITHOUT_${var}) -MK_${var}:= no -.else -MK_${var}:= yes -.endif -.else -.if defined(WITH_${var}) -MK_${var}:= yes -.else -MK_${var}:= no -.endif -.endif -.endif -.endfor - -# # Force some options off if their dependencies are off. # Order is somewhat important. # -.if !${COMPILER_FEATURES:Mc++11} -MK_GOOGLETEST:= no -.endif - .if ${MK_CAPSICUM} == "no" MK_CASPER:= no .endif @@ -553,9 +528,5 @@ MK_${vv:H}:= ${MK_${vv:T}} # # Set defaults for the MK_*_SUPPORT variables. # - -.if !${COMPILER_FEATURES:Mc++11} -MK_LLDB:= no -.endif .endif # !target(____) From owner-svn-src-head@freebsd.org Wed Mar 18 21:31:36 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id AC24226DB66; Wed, 18 Mar 2020 21:31:36 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jNX831c8z4Cyq; Wed, 18 Mar 2020 21:31:36 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4D5E74BC; Wed, 18 Mar 2020 21:31:36 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02ILVa6V024258; Wed, 18 Mar 2020 21:31:36 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02ILVaZj024257; Wed, 18 Mar 2020 21:31:36 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003182131.02ILVaZj024257@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 18 Mar 2020 21:31:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359092 - head/sys/x86/x86 X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/x86/x86 X-SVN-Commit-Revision: 359092 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 21:31:36 -0000 Author: kib Date: Wed Mar 18 21:31:35 2020 New Revision: 359092 URL: https://svnweb.freebsd.org/changeset/base/359092 Log: Stop (trying to) renumber io apics. It does not serve any purpose now, the io apic id is not seen by software, and some Intel documents claim that the register is implemented for FUD reasons. More, renumbering seems to not work on new Intel machines which actually have mismatched MADT and hw IDs. On older machines where separate APIC bus existed, unique numbering of all APICs was required for bus arbitration to work, but it is no longer true (that machines were SMP from pre-Pentium IV era). When matching PCIe IOAPIC device against MADT-enumerated IOAPICs, compare io_apic_id from BAR against io_apic_id read from the MADT-pointed register page. Reviewed by: jhb Tested by: flo (previous version), pho MFC after: 2 weeks Differential revision: https://reviews.freebsd.org/D23965 Modified: head/sys/x86/x86/io_apic.c Modified: head/sys/x86/x86/io_apic.c ============================================================================== --- head/sys/x86/x86/io_apic.c Wed Mar 18 21:28:55 2020 (r359091) +++ head/sys/x86/x86/io_apic.c Wed Mar 18 21:31:35 2020 (r359092) @@ -94,7 +94,8 @@ struct ioapic_intsrc { struct ioapic { struct pic io_pic; u_int io_id:8; /* logical ID */ - u_int io_apic_id:8; + u_int io_apic_id:8; /* Id as enumerated by MADT */ + u_int io_hw_apic_id:8; /* Content of APIC ID register */ u_int io_intbase:8; /* System Interrupt base */ u_int io_numintr:8; u_int io_haseoi:1; @@ -634,15 +635,12 @@ ioapic_create(vm_paddr_t addr, int32_t apic_id, int in io->pci_wnd = NULL; mtx_lock_spin(&icu_lock); io->io_id = next_id++; - io->io_apic_id = ioapic_read(apic, IOAPIC_ID) >> APIC_ID_SHIFT; - if (apic_id != -1 && io->io_apic_id != apic_id) { - ioapic_write(apic, IOAPIC_ID, apic_id << APIC_ID_SHIFT); - mtx_unlock_spin(&icu_lock); - io->io_apic_id = apic_id; - printf("ioapic%u: Changing APIC ID to %d\n", io->io_id, - apic_id); - } else - mtx_unlock_spin(&icu_lock); + io->io_hw_apic_id = ioapic_read(apic, IOAPIC_ID) >> APIC_ID_SHIFT; + io->io_apic_id = apic_id == -1 ? io->io_hw_apic_id : apic_id; + mtx_unlock_spin(&icu_lock); + if (io->io_hw_apic_id != apic_id) + printf("ioapic%u: MADT APIC ID %d != hw id %d\n", io->io_id, + apic_id, io->io_hw_apic_id); if (intbase == -1) { intbase = next_ioapic_base; printf("ioapic%u: Assuming intbase of %d\n", io->io_id, @@ -1017,14 +1015,14 @@ ioapic_pci_attach(device_t dev) } /* Then by apic id */ STAILQ_FOREACH(io, &ioapic_list, io_next) { - if (io->io_apic_id == apic_id) + if (io->io_hw_apic_id == apic_id) goto found; } mtx_unlock_spin(&icu_lock); if (bootverbose) device_printf(dev, - "cannot match pci bar apic id %d against MADT\n", - apic_id); + "cannot match pci bar apic id %d against MADT, BAR0 %#jx\n", + apic_id, (uintmax_t)rman_get_start(res)); fail: bus_release_resource(dev, SYS_RES_MEMORY, rid, res); return (ENXIO); @@ -1037,13 +1035,13 @@ found: io->pci_dev = dev; io->pci_wnd = res; if (bootverbose && (io->io_paddr != (vm_paddr_t)rman_get_start(res) || - io->io_apic_id != apic_id)) { + io->io_hw_apic_id != apic_id)) { device_printf(dev, "pci%d:%d:%d:%d pci BAR0@%jx id %d " - "MADT id %d paddr@%jx\n", + "MADT id %d hw id %d paddr@%jx\n", pci_get_domain(dev), pci_get_bus(dev), pci_get_slot(dev), pci_get_function(dev), (uintmax_t)rman_get_start(res), apic_id, - io->io_apic_id, (uintmax_t)io->io_paddr); + io->io_apic_id, io->io_hw_apic_id, (uintmax_t)io->io_paddr); } mtx_unlock_spin(&icu_lock); return (0); From owner-svn-src-head@freebsd.org Wed Mar 18 21:34:53 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 2B34426DDE7; Wed, 18 Mar 2020 21:34:53 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jNbw6ljsz4Lkh; Wed, 18 Mar 2020 21:34:52 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B89BD523; Wed, 18 Mar 2020 21:34:52 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02ILYqhB029933; Wed, 18 Mar 2020 21:34:52 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02ILYqVF029932; Wed, 18 Mar 2020 21:34:52 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003182134.02ILYqVF029932@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 18 Mar 2020 21:34:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359093 - head/sys/x86/x86 X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/x86/x86 X-SVN-Commit-Revision: 359093 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 21:34:53 -0000 Author: kib Date: Wed Mar 18 21:34:52 2020 New Revision: 359093 URL: https://svnweb.freebsd.org/changeset/base/359093 Log: Do not spuriously re-enable disabled io_apic pin on EOI for some configurations. If EOI suppression is supported but reported ioapic version is so old that it does not has EOI register (weird virtualization setup), fix Intel trick of eoi-ing by flipping pin type (edge/level) to account for the disabled pin. Reported by: Juniper Reviewed by: jhb Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Differential revision: https://reviews.freebsd.org/D23965 Modified: head/sys/x86/x86/io_apic.c Modified: head/sys/x86/x86/io_apic.c ============================================================================== --- head/sys/x86/x86/io_apic.c Wed Mar 18 21:31:35 2020 (r359092) +++ head/sys/x86/x86/io_apic.c Wed Mar 18 21:34:52 2020 (r359093) @@ -193,8 +193,11 @@ _ioapic_eoi_source(struct intsrc *isrc, int locked) low1 |= IOART_TRGREDG | IOART_INTMSET; ioapic_write(io->io_addr, IOAPIC_REDTBL_LO(src->io_intpin), low1); + low1 = src->io_lowreg; + if (src->io_masked != 0) + low1 |= IOART_INTMSET; ioapic_write(io->io_addr, IOAPIC_REDTBL_LO(src->io_intpin), - src->io_lowreg); + low1); if (!locked) mtx_unlock_spin(&icu_lock); } From owner-svn-src-head@freebsd.org Wed Mar 18 21:45:32 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 0D2E526E30E for ; Wed, 18 Mar 2020 21:45:32 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound3d.ore.mailhop.org (outbound3d.ore.mailhop.org [54.186.57.195]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48jNrB6qn9z3KJR for ; Wed, 18 Mar 2020 21:45:30 +0000 (UTC) (envelope-from ian@freebsd.org) ARC-Seal: i=1; a=rsa-sha256; t=1584567929; cv=none; d=outbound.mailhop.org; s=arc-outbound20181012; b=LvzaSaVo3Jddh77lPH3FH+V9SDHwLOnKXGcc7aJNvybHvfm1ihy8IWasrrt9n4hMatNID67AZTUiw mIFFkzisBakDMeY3tILDvi58+2MCTiIhrbUCb8/fVLNPIYpoysAWmEIjHOwzdvZSMbv424ZQKhKu5G lW5Kbj/sXN7tuPLThbdbsM8eZJfN60nkkKLqfRsElpcXIkQ5f3Pej06/ARxwPTIRduC5SmYIrH5nLa MFwQX34wDOt07UAwNpU8iq9mDXT2A7VjggfKjRJ+GWgtlFEXuJux40zV44UXaxojLv9PF++NbHNKhX 62M+C+sRB3Ie0yN/qR8vL22ZWMd9pjw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=arc-outbound20181012; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:cc:to:from:subject:message-id:dkim-signature:from; bh=EDToWQRsiDzOhac4QXOnICLPeu1zzh/pLeB87aeBkfM=; b=pjsxYv4KLHh2BCB0v/VsWZCtVKDT3lwUOAtidhxNqqeHR0oajAXwZ4QK4de5cH9/c4XtqJsSkZQrp 2kkzcUxN/94SKOJikXCPfhlPQLY/bnNBZw/T/Ba/Ow/NS2K+9t/w3meZcGI8udZqqIMSchiyn2nc20 TlVxr46AXlNIV6Yxh0X5ZuQp28L5xaMOKh9bNI/MN2VTDePAAg6+aqZOlgSNhFcOal2Qsa0Ykci3Qz jBKZxFgrUQQ/hHJVPi1o+riXZF6mMfZ77MXdXphTTO23/7xHWO7W9T77ZPDxIXLTEKyRL4RQDgiO64 TEl0J4T+DlEDZcZ2CqUs9twTrZMn6vw== ARC-Authentication-Results: i=1; outbound3.ore.mailhop.org; spf=softfail smtp.mailfrom=freebsd.org smtp.remote-ip=67.177.211.60; dmarc=none header.from=freebsd.org; arc=none header.oldest-pass=0; DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=dkim-high; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:cc:to:from:subject:message-id:from; bh=EDToWQRsiDzOhac4QXOnICLPeu1zzh/pLeB87aeBkfM=; b=ioyNuEjuOPekfUs1a7ccyMf9jMm0fZsd7V814qQd6xIh4LTjx+AD63E8szLga4o+BYmw7AbSUmaPZ N7sjjBgB4CqgpUTvwFIAQNy5qm7DxL6V+6X79HJyjdXFj7ZaYTDV3KvnHwL1pd1HJ7eexgTva7nsmq H2pHKkntXqmaMpBAID7VKFfHRVXc9fEpCtXlrJi5dnEERSEtmdHyEww+yFl4oLigXYPWuPJWiU7Lfz ufd1keGR/GxWGKVtY5byPo6jcai07raW0QVEPvsXJJehnkYtjMVabd5DZ70j+PtGULXsHotLTNBTJg 7mEEm4Lqq6+q3CrUMG9nmDda7FLMMNQ== X-MHO-RoutePath: aGlwcGll X-MHO-User: c756c7e5-6961-11ea-b80e-052b4a66b6b2 X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 67.177.211.60 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [67.177.211.60]) by outbound3.ore.mailhop.org (Halon) with ESMTPSA id c756c7e5-6961-11ea-b80e-052b4a66b6b2; Wed, 18 Mar 2020 21:45:27 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id 02ILjQRA077548; Wed, 18 Mar 2020 15:45:26 -0600 (MDT) (envelope-from ian@freebsd.org) Message-ID: <0e4e4388479618a739f1268f2d6eebfd37393517.camel@freebsd.org> Subject: Re: svn commit: r359053 - head/sys/kern From: Ian Lepore To: Konstantin Belousov Cc: John Baldwin , Conrad Meyer , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Date: Wed, 18 Mar 2020 15:45:26 -0600 In-Reply-To: <20200318203618.GF1992@kib.kiev.ua> References: <202003172227.02HMRHLM086023@repo.freebsd.org> <047c4edb4ff9fa6c40be6492c2f082e374f7a941.camel@freebsd.org> <96b14f0cff17b3367e3428dbcdc1bf12d7ab7356.camel@freebsd.org> <20200318203618.GF1992@kib.kiev.ua> Content-Type: text/plain; charset="ASCII" X-Mailer: Evolution 3.28.5 FreeBSD GNOME Team Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 48jNrB6qn9z3KJR X-Spamd-Bar: + Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [1.97 / 15.00]; local_wl_from(0.00)[freebsd.org]; NEURAL_SPAM_LONG(1.00)[0.995,0]; NEURAL_SPAM_MEDIUM(0.98)[0.976,0]; ASN(0.00)[asn:16509, ipnet:54.186.0.0/15, country:US] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 21:45:32 -0000 On Wed, 2020-03-18 at 22:36 +0200, Konstantin Belousov wrote: > On Tue, Mar 17, 2020 at 07:25:01PM -0600, Ian Lepore wrote: > > On Tue, 2020-03-17 at 17:05 -0700, John Baldwin wrote: > > > On 3/17/20 3:36 PM, Ian Lepore wrote: > > > > On Tue, 2020-03-17 at 22:27 +0000, Conrad Meyer wrote: > > > > > Author: cem > > > > > Date: Tue Mar 17 22:27:16 2020 > > > > > New Revision: 359053 > > > > > URL: https://svnweb.freebsd.org/changeset/base/359053 > > > > > > > > > > Log: > > > > > Implement sysctl kern.boot_id > > > > > > > > > > Boot IDs are random, opaque 128-bit identifiers that > > > > > distinguish distinct > > > > > system boots. A new ID is generated each time the system > > > > > boots. Unlike > > > > > kern.boottime, the value is not modified by NTP > > > > > adjustments. It remains fixed > > > > > until the machine is restarted. > > > > > > > > > > PR: 244867 > > > > > Reported by: Ricardo Fraile > > > > > MFC after: I do not intend to, but feel free > > > > > > > > > > Modified: > > > > > head/sys/kern/kern_mib.c > > > > > > > > > > Modified: head/sys/kern/kern_mib.c > > > > > ============================================================= > > > > > ==== > > > > > ============= > > > > > --- head/sys/kern/kern_mib.c Tue Mar 17 21:29:03 2020 ( > > > > > r359052) > > > > > +++ head/sys/kern/kern_mib.c Tue Mar 17 22:27:16 2020 ( > > > > > r359053) > > > > > @@ -448,6 +448,32 @@ SYSCTL_PROC(_kern, KERN_HOSTID, hostid, > > > > > CTLTYPE_ULONG | CTLFLAG_RW | CTLFLAG_PRISON | > > > > > CTLFLAG_MPSAFE > > > > > > CTLFLAG_CAPRD, > > > > > > > > > > NULL, 0, sysctl_hostid, "LU", "Host ID"); > > > > > > > > > > +static struct mtx bootid_lk; > > > > > +MTX_SYSINIT(bootid_lock, &bootid_lk, "bootid generator > > > > > lock", > > > > > MTX_DEF); > > > > > + > > > > > +static int > > > > > +sysctl_bootid(SYSCTL_HANDLER_ARGS) > > > > > +{ > > > > > + static uint8_t boot_id[16]; > > > > > + static bool initialized = false; > > > > > + > > > > > + mtx_lock(&bootid_lk); > > > > > + if (!initialized) { > > > > > + if (!is_random_seeded()) { > > > > > + mtx_unlock(&bootid_lk); > > > > > + return (ENXIO); > > > > > + } > > > > > + arc4random_buf(boot_id, sizeof(boot_id)); > > > > > + initialized = true; > > > > > + } > > > > > + mtx_unlock(&bootid_lk); > > > > > + > > > > > + return (SYSCTL_OUT(req, boot_id, sizeof(boot_id))); > > > > > +} > > > > > +SYSCTL_PROC(_kern, OID_AUTO, boot_id, > > > > > + CTLTYPE_STRUCT | CTLFLAG_RD | CTLFLAG_MPSAFE | > > > > > CTLFLAG_CAPRD, > > > > > + NULL, 0, sysctl_bootid, "", "Random boot ID"); > > > > > + > > > > > /* > > > > > * The osrelease string is copied from the global (osrelease > > > > > in > > > > > vers.c) into > > > > > * prison0 by a sysinit and is inherited by child jails if > > > > > notG > > > > > changed at jail > > > > > > > > This seems a bit complex. Why run a sysinit to init a mutex so > > > > that > > > > you can safely do a lazy init of boot_id? Seems like it would > > > > be > > > > much > > > > easier to just use a sysinit at SI_SUB_LAST to init boot_id > > > > before > > > > sysctl can reference it. > > > > > > Presumably you may not have enough entropy by SI_SUB_LAST to > > > generate > > > it? > > > > > > > I thought arc4random in the kernel could provide random numbers > > immediately (and definitely after jitter in device attachment times > > at > > the end of kernel init)? This doesn't seem like the kind of thing > > that > > needs crypto-strength randomness. > > I think that a large simplification can come from the random driver > initializing the boot_id variable immediately before setting things > so that is_random_seeded() start returning true. > > But even this might be too complex, Why not copy the value from the > boottime on boot, and not ever touch it after. On some systems (virtually all mips, arm, and some arm64 systems), there is no RTC and boottime doesn't get set initially until ntpd or something else in userland runs to set time. -- Ian From owner-svn-src-head@freebsd.org Wed Mar 18 21:54:34 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 159A226E8D1; Wed, 18 Mar 2020 21:54:34 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jP2d3rFJz483X; Wed, 18 Mar 2020 21:54:33 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 34BF68E0; Wed, 18 Mar 2020 21:54:33 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02ILsXuN042015; Wed, 18 Mar 2020 21:54:33 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02ILsXo7042014; Wed, 18 Mar 2020 21:54:33 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003182154.02ILsXo7042014@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 18 Mar 2020 21:54:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359094 - head/sys/dev/mlx5/mlx5_core X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/dev/mlx5/mlx5_core X-SVN-Commit-Revision: 359094 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 21:54:34 -0000 Author: kib Date: Wed Mar 18 21:54:32 2020 New Revision: 359094 URL: https://svnweb.freebsd.org/changeset/base/359094 Log: mlx5_core: add sysctls to report device capabilities. Reviewed by: hselasky Sponsored by: Mellanox Technologies MFC after: 2 weeks Modified: head/sys/dev/mlx5/mlx5_core/mlx5_main.c Modified: head/sys/dev/mlx5/mlx5_core/mlx5_main.c ============================================================================== --- head/sys/dev/mlx5/mlx5_core/mlx5_main.c Wed Mar 18 21:34:52 2020 (r359093) +++ head/sys/dev/mlx5/mlx5_core/mlx5_main.c Wed Mar 18 21:54:32 2020 (r359094) @@ -1298,6 +1298,9 @@ static int init_one(struct pci_dev *pdev, int i,err; struct sysctl_oid *pme_sysctl_node; struct sysctl_oid *pme_err_sysctl_node; + struct sysctl_oid *cap_sysctl_node; + struct sysctl_oid *current_cap_sysctl_node; + struct sysctl_oid *max_cap_sysctl_node; dev = kzalloc(sizeof(*dev), GFP_KERNEL); priv = &dev->priv; @@ -1365,6 +1368,186 @@ static int init_one(struct pci_dev *pdev, 0, mlx5_pme_err_desc[2 * i + 1]); } + cap_sysctl_node = SYSCTL_ADD_NODE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(device_get_sysctl_tree(bsddev)), + OID_AUTO, "caps", CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, + "hardware capabilities raw bitstrings"); + if (cap_sysctl_node == NULL) { + err = -ENOMEM; + goto clean_sysctl_ctx; + } + current_cap_sysctl_node = SYSCTL_ADD_NODE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(cap_sysctl_node), + OID_AUTO, "current", CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, + ""); + if (current_cap_sysctl_node == NULL) { + err = -ENOMEM; + goto clean_sysctl_ctx; + } + max_cap_sysctl_node = SYSCTL_ADD_NODE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(cap_sysctl_node), + OID_AUTO, "max", CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, + ""); + if (max_cap_sysctl_node == NULL) { + err = -ENOMEM; + goto clean_sysctl_ctx; + } + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(current_cap_sysctl_node), + OID_AUTO, "general", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_cur[MLX5_CAP_GENERAL], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(max_cap_sysctl_node), + OID_AUTO, "general", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_max[MLX5_CAP_GENERAL], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(current_cap_sysctl_node), + OID_AUTO, "ether", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_cur[MLX5_CAP_ETHERNET_OFFLOADS], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(max_cap_sysctl_node), + OID_AUTO, "ether", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_max[MLX5_CAP_ETHERNET_OFFLOADS], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(current_cap_sysctl_node), + OID_AUTO, "odp", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_cur[MLX5_CAP_ODP], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(max_cap_sysctl_node), + OID_AUTO, "odp", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_max[MLX5_CAP_ODP], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(current_cap_sysctl_node), + OID_AUTO, "atomic", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_cur[MLX5_CAP_ATOMIC], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(max_cap_sysctl_node), + OID_AUTO, "atomic", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_max[MLX5_CAP_ATOMIC], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(current_cap_sysctl_node), + OID_AUTO, "roce", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_cur[MLX5_CAP_ROCE], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(max_cap_sysctl_node), + OID_AUTO, "roce", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_max[MLX5_CAP_ROCE], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(current_cap_sysctl_node), + OID_AUTO, "ipoib", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_cur[MLX5_CAP_IPOIB_OFFLOADS], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(max_cap_sysctl_node), + OID_AUTO, "ipoib", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_max[MLX5_CAP_IPOIB_OFFLOADS], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(current_cap_sysctl_node), + OID_AUTO, "eoib", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_cur[MLX5_CAP_EOIB_OFFLOADS], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(max_cap_sysctl_node), + OID_AUTO, "eoib", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_max[MLX5_CAP_EOIB_OFFLOADS], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(current_cap_sysctl_node), + OID_AUTO, "flow_table", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_cur[MLX5_CAP_FLOW_TABLE], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(max_cap_sysctl_node), + OID_AUTO, "flow_table", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_max[MLX5_CAP_FLOW_TABLE], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(current_cap_sysctl_node), + OID_AUTO, "eswitch_flow_table", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_cur[MLX5_CAP_ESWITCH_FLOW_TABLE], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(max_cap_sysctl_node), + OID_AUTO, "eswitch_flow_table", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_max[MLX5_CAP_ESWITCH_FLOW_TABLE], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(current_cap_sysctl_node), + OID_AUTO, "eswitch", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_cur[MLX5_CAP_ESWITCH], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(max_cap_sysctl_node), + OID_AUTO, "eswitch", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_max[MLX5_CAP_ESWITCH], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(current_cap_sysctl_node), + OID_AUTO, "snapshot", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_cur[MLX5_CAP_SNAPSHOT], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(max_cap_sysctl_node), + OID_AUTO, "snapshot", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_max[MLX5_CAP_SNAPSHOT], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(current_cap_sysctl_node), + OID_AUTO, "vector_calc", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_cur[MLX5_CAP_VECTOR_CALC], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(max_cap_sysctl_node), + OID_AUTO, "vector_calc", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_max[MLX5_CAP_VECTOR_CALC], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(current_cap_sysctl_node), + OID_AUTO, "qos", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_cur[MLX5_CAP_QOS], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(max_cap_sysctl_node), + OID_AUTO, "qos", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_max[MLX5_CAP_QOS], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(current_cap_sysctl_node), + OID_AUTO, "debug", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_cur[MLX5_CAP_DEBUG], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(max_cap_sysctl_node), + OID_AUTO, "debug", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->hca_caps_max[MLX5_CAP_DEBUG], + MLX5_UN_SZ_DW(hca_cap_union) * sizeof(u32), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(cap_sysctl_node), + OID_AUTO, "pcam", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->caps.pcam, sizeof(dev->caps.pcam), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(cap_sysctl_node), + OID_AUTO, "mcam", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->caps.mcam, sizeof(dev->caps.mcam), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(cap_sysctl_node), + OID_AUTO, "qcam", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->caps.qcam, sizeof(dev->caps.qcam), "IU", ""); + SYSCTL_ADD_OPAQUE(&dev->sysctl_ctx, + SYSCTL_CHILDREN(cap_sysctl_node), + OID_AUTO, "fpga", CTLFLAG_RD | CTLFLAG_MPSAFE, + &dev->caps.fpga, sizeof(dev->caps.fpga), "IU", ""); INIT_LIST_HEAD(&priv->ctx_list); spin_lock_init(&priv->ctx_lock); From owner-svn-src-head@freebsd.org Wed Mar 18 22:09:19 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 81F9326EB74; Wed, 18 Mar 2020 22:09:19 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jPMg2SZgz4YZZ; Wed, 18 Mar 2020 22:09:19 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 0E2B6AA9; Wed, 18 Mar 2020 22:09:19 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IM9IMH048064; Wed, 18 Mar 2020 22:09:18 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IM9Grr048052; Wed, 18 Mar 2020 22:09:16 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003182209.02IM9Grr048052@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 18 Mar 2020 22:09:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359095 - in head/sys/modules: ibcore linuxkpi mlx4 mlx4en mlx4ib mlx5 mlx5en mlx5fpga_tools mlx5ib rdma/krping X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in head/sys/modules: ibcore linuxkpi mlx4 mlx4en mlx4ib mlx5 mlx5en mlx5fpga_tools mlx5ib rdma/krping X-SVN-Commit-Revision: 359095 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 22:09:19 -0000 Author: kib Date: Wed Mar 18 22:09:16 2020 New Revision: 359095 URL: https://svnweb.freebsd.org/changeset/base/359095 Log: Add pci_iov_if.h header as a dependency for Linuxkpi consumers. Sponsored by: Mellanox Technologies MFC after: 2 weeks Modified: head/sys/modules/ibcore/Makefile head/sys/modules/linuxkpi/Makefile head/sys/modules/mlx4/Makefile head/sys/modules/mlx4en/Makefile head/sys/modules/mlx4ib/Makefile head/sys/modules/mlx5/Makefile head/sys/modules/mlx5en/Makefile head/sys/modules/mlx5fpga_tools/Makefile head/sys/modules/mlx5ib/Makefile head/sys/modules/rdma/krping/Makefile Modified: head/sys/modules/ibcore/Makefile ============================================================================== --- head/sys/modules/ibcore/Makefile Wed Mar 18 21:54:32 2020 (r359094) +++ head/sys/modules/ibcore/Makefile Wed Mar 18 22:09:16 2020 (r359095) @@ -2,7 +2,7 @@ .PATH: ${SRCTOP}/sys/ofed/drivers/infiniband/core KMOD= ibcore -SRCS= vnode_if.h device_if.h bus_if.h pci_if.h \ +SRCS= vnode_if.h device_if.h bus_if.h pci_if.h pci_iov_if.h \ opt_inet.h opt_inet6.h \ ib_addr.c \ ib_agent.c \ Modified: head/sys/modules/linuxkpi/Makefile ============================================================================== --- head/sys/modules/linuxkpi/Makefile Wed Mar 18 21:54:32 2020 (r359094) +++ head/sys/modules/linuxkpi/Makefile Wed Mar 18 22:09:16 2020 (r359095) @@ -24,6 +24,7 @@ SRCS= linux_compat.c \ SRCS+= bus_if.h \ device_if.h \ pci_if.h \ + pci_iov_if.h \ vnode_if.h \ usb_if.h \ opt_usb.h \ Modified: head/sys/modules/mlx4/Makefile ============================================================================== --- head/sys/modules/mlx4/Makefile Wed Mar 18 21:54:32 2020 (r359094) +++ head/sys/modules/mlx4/Makefile Wed Mar 18 22:09:16 2020 (r359095) @@ -2,7 +2,7 @@ .PATH: ${SRCTOP}/sys/dev/mlx4/mlx4_core KMOD= mlx4 -SRCS= device_if.h bus_if.h vnode_if.h pci_if.h \ +SRCS= device_if.h bus_if.h vnode_if.h pci_if.h pci_iov_if.h \ opt_inet.h opt_inet6.h \ mlx4_alloc.c \ mlx4_catas.c \ Modified: head/sys/modules/mlx4en/Makefile ============================================================================== --- head/sys/modules/mlx4en/Makefile Wed Mar 18 21:54:32 2020 (r359094) +++ head/sys/modules/mlx4en/Makefile Wed Mar 18 22:09:16 2020 (r359095) @@ -2,7 +2,7 @@ .PATH: ${SRCTOP}/sys/dev/mlx4/mlx4_en KMOD= mlx4en -SRCS= device_if.h bus_if.h pci_if.h vnode_if.h \ +SRCS= device_if.h bus_if.h pci_if.h pci_iov_if.h vnode_if.h \ opt_inet.h opt_inet6.h \ mlx4_en_cq.c \ mlx4_en_main.c \ Modified: head/sys/modules/mlx4ib/Makefile ============================================================================== --- head/sys/modules/mlx4ib/Makefile Wed Mar 18 21:54:32 2020 (r359094) +++ head/sys/modules/mlx4ib/Makefile Wed Mar 18 22:09:16 2020 (r359095) @@ -2,7 +2,7 @@ .PATH: ${SRCTOP}/sys/dev/mlx4/mlx4_ib KMOD= mlx4ib -SRCS= device_if.h bus_if.h vnode_if.h pci_if.h \ +SRCS= device_if.h bus_if.h vnode_if.h pci_if.h pci_iov_if.h \ opt_inet.h opt_inet6.h \ mlx4_ib_alias_GUID.c \ mlx4_ib_mcg.c \ Modified: head/sys/modules/mlx5/Makefile ============================================================================== --- head/sys/modules/mlx5/Makefile Wed Mar 18 21:54:32 2020 (r359094) +++ head/sys/modules/mlx5/Makefile Wed Mar 18 22:09:16 2020 (r359095) @@ -33,7 +33,7 @@ mlx5_vport.c \ mlx5_vsc.c \ mlx5_wq.c \ mlx5_gid.c \ -device_if.h bus_if.h vnode_if.h pci_if.h \ +device_if.h bus_if.h vnode_if.h pci_if.h pci_iov_if.h \ opt_inet.h opt_inet6.h opt_rss.h opt_ratelimit.h CFLAGS+= -I${SRCTOP}/sys/ofed/include Modified: head/sys/modules/mlx5en/Makefile ============================================================================== --- head/sys/modules/mlx5en/Makefile Wed Mar 18 21:54:32 2020 (r359094) +++ head/sys/modules/mlx5en/Makefile Wed Mar 18 22:09:16 2020 (r359095) @@ -13,7 +13,7 @@ mlx5_en_rx.c \ mlx5_en_rl.c \ mlx5_en_txrx.c \ mlx5_en_port_buffer.c \ -device_if.h bus_if.h vnode_if.h pci_if.h \ +device_if.h bus_if.h vnode_if.h pci_if.h pci_iov_if.h \ opt_inet.h opt_inet6.h opt_rss.h opt_ratelimit.h \ opt_kern_tls.h Modified: head/sys/modules/mlx5fpga_tools/Makefile ============================================================================== --- head/sys/modules/mlx5fpga_tools/Makefile Wed Mar 18 21:54:32 2020 (r359094) +++ head/sys/modules/mlx5fpga_tools/Makefile Wed Mar 18 22:09:16 2020 (r359095) @@ -7,7 +7,7 @@ SRCS= \ mlx5fpga_tools_char.c SRCS+= \ - device_if.h bus_if.h vnode_if.h pci_if.h \ + device_if.h bus_if.h vnode_if.h pci_if.h pci_iov_if.h \ opt_inet.h opt_inet6.h opt_rss.h opt_ratelimit.h CFLAGS+= -I${SRCTOP}/sys/ofed/include Modified: head/sys/modules/mlx5ib/Makefile ============================================================================== --- head/sys/modules/mlx5ib/Makefile Wed Mar 18 21:54:32 2020 (r359094) +++ head/sys/modules/mlx5ib/Makefile Wed Mar 18 22:09:16 2020 (r359095) @@ -15,7 +15,7 @@ mlx5_ib_mr.c \ mlx5_ib_qp.c \ mlx5_ib_srq.c \ mlx5_ib_virt.c \ -device_if.h bus_if.h vnode_if.h pci_if.h \ +device_if.h bus_if.h vnode_if.h pci_if.h pci_iov_if.h \ opt_inet.h opt_inet6.h opt_ratelimit.h CFLAGS+= -I${SRCTOP}/sys/ofed/include Modified: head/sys/modules/rdma/krping/Makefile ============================================================================== --- head/sys/modules/rdma/krping/Makefile Wed Mar 18 21:54:32 2020 (r359094) +++ head/sys/modules/rdma/krping/Makefile Wed Mar 18 22:09:16 2020 (r359095) @@ -3,7 +3,7 @@ KMOD= krping SRCS= krping.c krping_dev.c getopt.c -SRCS+= bus_if.h device_if.h pci_if.h pcib_if.h vnode_if.h +SRCS+= bus_if.h device_if.h pci_if.h pci_iov_if.h pcib_if.h vnode_if.h SRCS+= opt_sched.h opt_inet.h opt_inet6.h CFLAGS+= -I${SRCTOP}/sys/ofed/include CFLAGS+= -I${SRCTOP}/sys/ofed/include/uapi From owner-svn-src-head@freebsd.org Wed Mar 18 22:10:51 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 3602726EE29; Wed, 18 Mar 2020 22:10:51 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jPPQ6T9zz4cqm; Wed, 18 Mar 2020 22:10:50 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 64E89ACC; Wed, 18 Mar 2020 22:10:50 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IMAoP2049039; Wed, 18 Mar 2020 22:10:50 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IMAoG9049036; Wed, 18 Mar 2020 22:10:50 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003182210.02IMAoG9049036@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 18 Mar 2020 22:10:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359096 - in head/sys/compat/linuxkpi/common: include/linux src X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in head/sys/compat/linuxkpi/common: include/linux src X-SVN-Commit-Revision: 359096 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 22:10:51 -0000 Author: kib Date: Wed Mar 18 22:10:49 2020 New Revision: 359096 URL: https://svnweb.freebsd.org/changeset/base/359096 Log: linuxkpi: Add infrastructure to pass FreeBSD IOV method calls into pci_driver methods. Reviewed by: hselasky Sponsored by: Mellanox Technologies MFC after: 2 weeks Modified: head/sys/compat/linuxkpi/common/include/linux/pci.h head/sys/compat/linuxkpi/common/src/linux_pci.c Modified: head/sys/compat/linuxkpi/common/include/linux/pci.h ============================================================================== --- head/sys/compat/linuxkpi/common/include/linux/pci.h Wed Mar 18 22:09:16 2020 (r359095) +++ head/sys/compat/linuxkpi/common/include/linux/pci.h Wed Mar 18 22:10:49 2020 (r359096) @@ -37,11 +37,13 @@ #include #include +#include #include #include #include #include #include +#include #include @@ -201,6 +203,11 @@ struct pci_driver { struct device_driver driver; const struct pci_error_handlers *err_handler; bool isdrm; + int (*bsd_iov_init)(device_t dev, uint16_t num_vfs, + const nvlist_t *pf_config); + void (*bsd_iov_uninit)(device_t dev); + int (*bsd_iov_add_vf)(device_t dev, uint16_t vfnum, + const nvlist_t *vf_config); }; struct pci_bus { Modified: head/sys/compat/linuxkpi/common/src/linux_pci.c ============================================================================== --- head/sys/compat/linuxkpi/common/src/linux_pci.c Wed Mar 18 22:09:16 2020 (r359095) +++ head/sys/compat/linuxkpi/common/src/linux_pci.c Wed Mar 18 22:10:49 2020 (r359096) @@ -65,6 +65,9 @@ static device_detach_t linux_pci_detach; static device_suspend_t linux_pci_suspend; static device_resume_t linux_pci_resume; static device_shutdown_t linux_pci_shutdown; +static pci_iov_init_t linux_pci_iov_init; +static pci_iov_uninit_t linux_pci_iov_uninit; +static pci_iov_add_vf_t linux_pci_iov_add_vf; static device_method_t pci_methods[] = { DEVMETHOD(device_probe, linux_pci_probe), @@ -73,6 +76,9 @@ static device_method_t pci_methods[] = { DEVMETHOD(device_suspend, linux_pci_suspend), DEVMETHOD(device_resume, linux_pci_resume), DEVMETHOD(device_shutdown, linux_pci_shutdown), + DEVMETHOD(pci_iov_init, linux_pci_iov_init), + DEVMETHOD(pci_iov_uninit, linux_pci_iov_uninit), + DEVMETHOD(pci_iov_add_vf, linux_pci_iov_add_vf), DEVMETHOD_END }; @@ -353,6 +359,47 @@ linux_pci_shutdown(device_t dev) if (pdev->pdrv->shutdown != NULL) pdev->pdrv->shutdown(pdev); return (0); +} + +static int +linux_pci_iov_init(device_t dev, uint16_t num_vfs, const nvlist_t *pf_config) +{ + struct pci_dev *pdev; + int error; + + linux_set_current(curthread); + pdev = device_get_softc(dev); + if (pdev->pdrv->bsd_iov_init != NULL) + error = pdev->pdrv->bsd_iov_init(dev, num_vfs, pf_config); + else + error = EINVAL; + return (error); +} + +static void +linux_pci_iov_uninit(device_t dev) +{ + struct pci_dev *pdev; + + linux_set_current(curthread); + pdev = device_get_softc(dev); + if (pdev->pdrv->bsd_iov_uninit != NULL) + pdev->pdrv->bsd_iov_uninit(dev); +} + +static int +linux_pci_iov_add_vf(device_t dev, uint16_t vfnum, const nvlist_t *vf_config) +{ + struct pci_dev *pdev; + int error; + + linux_set_current(curthread); + pdev = device_get_softc(dev); + if (pdev->pdrv->bsd_iov_add_vf != NULL) + error = pdev->pdrv->bsd_iov_add_vf(dev, vfnum, vf_config); + else + error = EINVAL; + return (error); } static int From owner-svn-src-head@freebsd.org Wed Mar 18 22:14:25 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E23DC26EEEE; Wed, 18 Mar 2020 22:14:25 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jPTY52nTz4mpp; Wed, 18 Mar 2020 22:14:25 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 81951C85; Wed, 18 Mar 2020 22:14:25 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IMEP7W053895; Wed, 18 Mar 2020 22:14:25 GMT (envelope-from cy@FreeBSD.org) Received: (from cy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IMEPFf053894; Wed, 18 Mar 2020 22:14:25 GMT (envelope-from cy@FreeBSD.org) Message-Id: <202003182214.02IMEPFf053894@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org using -f From: Cy Schubert Date: Wed, 18 Mar 2020 22:14:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359097 - head/usr.sbin/ntp X-SVN-Group: head X-SVN-Commit-Author: cy X-SVN-Commit-Paths: head/usr.sbin/ntp X-SVN-Commit-Revision: 359097 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 22:14:26 -0000 Author: cy Date: Wed Mar 18 22:14:25 2020 New Revision: 359097 URL: https://svnweb.freebsd.org/changeset/base/359097 Log: PACKAGE_STRING should be the same as PACKAGE_VERSION. MFC after: 3 days Modified: head/usr.sbin/ntp/config.h Modified: head/usr.sbin/ntp/config.h ============================================================================== --- head/usr.sbin/ntp/config.h Wed Mar 18 22:10:49 2020 (r359096) +++ head/usr.sbin/ntp/config.h Wed Mar 18 22:14:25 2020 (r359097) @@ -1468,7 +1468,7 @@ #define PACKAGE_NAME "ntp" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "ntp 4.2.8p12" +#define PACKAGE_STRING "ntp 4.2.8p14" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "ntp" From owner-svn-src-head@freebsd.org Wed Mar 18 22:15:01 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 3224926EF74 for ; Wed, 18 Mar 2020 22:15:01 +0000 (UTC) (envelope-from 01000170efb6c800-d864b463-2fd9-4c75-a1bf-ff69a39dd7bf-000000@amazonses.com) Received: from a8-176.smtp-out.amazonses.com (a8-176.smtp-out.amazonses.com [54.240.8.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48jPVC3bXhz4nyb for ; Wed, 18 Mar 2020 22:14:59 +0000 (UTC) (envelope-from 01000170efb6c800-d864b463-2fd9-4c75-a1bf-ff69a39dd7bf-000000@amazonses.com) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=ae7m2yrxjw65l2cqdpjxuucyrvy564tn; d=tarsnap.com; t=1584569698; h=Subject:To:References:From:Message-ID:Date:MIME-Version:In-Reply-To:Content-Type:Content-Transfer-Encoding; bh=yYPMEzxSYvtFY9ipA9DHPN4y0lmq64hxTug3oIAygGE=; b=DaGtlH8W40GrnA838TpvGovlR2qsB9PpupexOpoisjdlcNOgqPWaPFG+HDGFElWL IbHkXzzmhrBwYYicVddyPQpOKVkfDuywLlkYfnZT2OghvivI4B8XZ1FGTcHyX4kU6vP P4IctMFKaBO8E67K6AVjUyb9Yal2mTnPHUl/gKP0= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=224i4yxa5dv7c2xz3womw6peuasteono; d=amazonses.com; t=1584569698; h=Subject:To:References:From:Message-ID:Date:MIME-Version:In-Reply-To:Content-Type:Content-Transfer-Encoding:Feedback-ID; bh=yYPMEzxSYvtFY9ipA9DHPN4y0lmq64hxTug3oIAygGE=; b=O9RMjrwP3MBee89GGgWOXY+sUFMKADma8GS37V6qW2sD32RodGyepu5lXuYONoQQ kUjyzzLI4cXJzyw8RxrZYatWmRCgd9XJwZAW1EE1wpe+hbDVT3wbTIYbfBPN+xfOJ/s 3TuSffBfPBUXbdtL2UQybVORNiTyxoOnGiNDI5IE= Subject: Re: svn commit: r355570 - head/sys/dev/sound/pci/hda To: Mark Johnston , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201912091925.xB9JPFfT026616@repo.freebsd.org> From: Colin Percival Autocrypt: addr=cperciva@tarsnap.com; prefer-encrypt=mutual; keydata= mQGhBElrAAcRBACDfDys4ZtK+ErCJ1HAzYeteKpm3OEsvT/49AjUTLihkF79HhIKrCQU+1KC zv7BwHCMLb6hq30As9L7iFKG7n5QFLFC4Te/VcITUnWHMG/c3ViLOfJGvi+9/nOEHaM1dVJY D6tEp5yM1nHmVQpo9932j4KGuGFR0LhOK5IHXOSfGwCgxSFDPdgxe2OEjWxjGgY+oV3EafcD +JROXCTjlcQiG/OguQH4Vks3mhHfFnEppLxTkDuYgHZQiUtpcT9ssH5khgqoTyMar05OUdAj ZIhNbWDh4LgTj+7ZmvLhXT5Zxw8LX9d7T36aTB8XDQSenDqEtinMWOb0TCBBLbsB8EFG1WTT ESbZci9jJS5yhtktuZoY/eM8uXMD/3k4FWFO80VRRkELSp+XSy/VlSQjyi/rhl2nQq/oOA9F oJbDaB0yq9VNhxP+uFBzBWSqeIX0t1ZWLtNfVFr4TRP5hihI5ICrg/0OpqgisKsU2NFe9xyO hyJLYmfD8ebpDJ/9k30C7Iju9pVrwLm1QgS4S2fqJRcR+U4WbjvP7CgStCVDb2xpbiBQZXJj aXZhbCA8Y3BlcmNpdmFAdGFyc25hcC5jb20+iGEEExECACEFAklrALYCGwMHCwkIBwMCAQQV AggDBBYCAwECHgECF4AACgkQOM7KaQxqam6/igCgn+z2k3V5ggNppmWrZstt1U2lugsAoL7L wS9V9yLtil3oWmHtwpUqYruEuQINBElrAAcQCAD3ZLMIsP4CIDoJORg+YY0lqLVBgcnF7pFb 4Uy2+KvdWofN+DKH61rZLjgXXkNE9M4EQC1B4lGttBP8IY2gs41y3AUogGdyFbidq99rCBz7 LTsgARHwFxZoaHmXyiZLEU1QZuMqwPZV1mCviRhN5E3rRqYNXVcrnXAAuhBpvNyj/ntHvcDN 2/m+ochiuBYueU4kX3lHya7sOj+mTsndcWmQ9soOUyr8O0r/BG088bMn4qqtUw4dl5/pglXk jbl7uOOPinKf0WVd2r6M0wLPJCD4NPHrCWRLLLAjwfjrtoSRvXxDbXhCdgGBa72+K8eYLzVs hgq7tJOoBWzjVK6XRxR7AAMGB/9Mo3iJ2DxqDecd02KCB5BsFDICbJGhPltU7FwrtbC7djSb XUrwsEVLHi4st4cbdGNCWCrp0BRezXZKohKnNAPFOTK++ZfgeKxrV2sJod+Q9RILF86tQ4XF 7A7Yme5hy92t/WgiU4vc/fWbgP8gV/19f8nunaT2E9NSa70mZFjZNu4iuwThoUUO5CV3Wo0Y UISsnRK8XD1+LR3A2qVyLiFRwh/miC1hgLFCTGCQ3GLxZeZzIpYSlGdQJ0L5lixW5ZQD9r1I 8i/8zhE6qRFAM0upUMI3Gt1Oq2w03DiXrZU0Fu/R8Rm8rlnkQKA+95mRTUq1xL5P5NZIi4gJ Z569OPMFiEkEGBECAAkFAklrAAcCGwwACgkQOM7KaQxqam41igCfbaldnFTu5uAdrnrghESv EI3CAo8AoLkNMks1pThl2BJNRm4CtTK9xZeH Message-ID: <01000170efb6c800-d864b463-2fd9-4c75-a1bf-ff69a39dd7bf-000000@email.amazonses.com> Date: Wed, 18 Mar 2020 22:14:58 +0000 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:68.0) Gecko/20100101 Thunderbird/68.4.2 MIME-Version: 1.0 In-Reply-To: <201912091925.xB9JPFfT026616@repo.freebsd.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-SES-Outgoing: 2020.03.18-54.240.8.176 Feedback-ID: 1.us-east-1.Lv9FVjaNvvR5llaqfLoOVbo2VxOELl7cjN0AOyXnPlk=:AmazonSES X-Rspamd-Queue-Id: 48jPVC3bXhz4nyb X-Spamd-Bar: - Authentication-Results: mx1.freebsd.org; dkim=pass header.d=tarsnap.com header.s=ae7m2yrxjw65l2cqdpjxuucyrvy564tn header.b=DaGtlH8W; dkim=pass header.d=amazonses.com header.s=224i4yxa5dv7c2xz3womw6peuasteono header.b=O9RMjrwP; dmarc=none; spf=pass (mx1.freebsd.org: domain of 01000170efb6c800-d864b463-2fd9-4c75-a1bf-ff69a39dd7bf-000000@amazonses.com designates 54.240.8.176 as permitted sender) smtp.mailfrom=01000170efb6c800-d864b463-2fd9-4c75-a1bf-ff69a39dd7bf-000000@amazonses.com X-Spamd-Result: default: False [-1.74 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.98)[-0.983,0]; R_DKIM_ALLOW(-0.20)[tarsnap.com:s=ae7m2yrxjw65l2cqdpjxuucyrvy564tn,amazonses.com:s=224i4yxa5dv7c2xz3womw6peuasteono]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; R_SPF_ALLOW(-0.20)[+ip4:54.240.0.0/18]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[tarsnap.com]; TO_DN_SOME(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[tarsnap.com:+,amazonses.com:+]; RCVD_IN_DNSWL_NONE(0.00)[176.8.240.54.list.dnswl.org : 127.0.15.0]; FORGED_SENDER(0.30)[cperciva@tarsnap.com,01000170efb6c800-d864b463-2fd9-4c75-a1bf-ff69a39dd7bf-000000@amazonses.com]; RCVD_COUNT_ZERO(0.00)[0]; MIME_TRACE(0.00)[0:+]; IP_SCORE(-2.05)[ip: (-2.62), ipnet: 54.240.8.0/21(-4.60), asn: 14618(-3.00), country: US(-0.05)]; ASN(0.00)[asn:14618, ipnet:54.240.8.0/21, country:US]; FORGED_MUA_THUNDERBIRD_MSGID_UNKNOWN(2.50)[]; FROM_NEQ_ENVFROM(0.00)[cperciva@tarsnap.com, 01000170efb6c800-d864b463-2fd9-4c75-a1bf-ff69a39dd7bf-000000@amazonses.com] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 22:15:01 -0000 On 2019-12-09 11:25, Mark Johnston wrote: > Author: markj > Date: Mon Dec 9 19:25:15 2019 > New Revision: 355570 > URL: https://svnweb.freebsd.org/changeset/base/355570 > > Log: > Configure headphone redirection for the Dell L780 and X1 Carbon 7th gen. > > As we do for many other laptops, put the headphone jack and speakers in > the same association by default so that the generic sound device > automatically switches between them. > > [...] > - } else if (id == HDA_CODEC_ALC256 && subid == DELL_I7577_SUBVENDOR) { > + } else if (id == HDA_CODEC_ALC256 && (subid == DELL_I7577_SUBVENDOR || > + subid == DELL_L7480_SUBVENDOR)) { > switch (nid) { > case 20: > patch = "as=1 seq=0";> [...] This is what we need for the Dell Latitude 7390 too -- nid20 is the internal speakers while nid33 is the headphone jack. Can you make the change or walk me through what needs to be done? (I'm not sure how the _SUBVENDOR bit works.) -- Colin Percival Security Officer Emeritus, FreeBSD | The power to serve Founder, Tarsnap | www.tarsnap.com | Online backups for the truly paranoid From owner-svn-src-head@freebsd.org Wed Mar 18 22:17:03 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 9E7F126F017; Wed, 18 Mar 2020 22:17:03 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jPXZ48Wzz4tQP; Wed, 18 Mar 2020 22:17:02 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2ED0FC87; Wed, 18 Mar 2020 22:17:02 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IMH1R8054089; Wed, 18 Mar 2020 22:17:01 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IMH1AY054088; Wed, 18 Mar 2020 22:17:01 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003182217.02IMH1AY054088@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 18 Mar 2020 22:17:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359098 - head/sys/dev/mlx5/mlx5_core X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/dev/mlx5/mlx5_core X-SVN-Commit-Revision: 359098 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 22:17:03 -0000 Author: kib Date: Wed Mar 18 22:17:01 2020 New Revision: 359098 URL: https://svnweb.freebsd.org/changeset/base/359098 Log: mlx5: Basic PCIe side of SR-IOV support. Reviewed by: hselasky Sponsored by: Mellanox Technologies MFC after: 2 weeks Modified: head/sys/dev/mlx5/mlx5_core/mlx5_main.c Modified: head/sys/dev/mlx5/mlx5_core/mlx5_main.c ============================================================================== --- head/sys/dev/mlx5/mlx5_core/mlx5_main.c Wed Mar 18 22:14:25 2020 (r359097) +++ head/sys/dev/mlx5/mlx5_core/mlx5_main.c Wed Mar 18 22:17:01 2020 (r359098) @@ -45,6 +45,11 @@ #include #include "mlx5_core.h" #include "fs_core.h" +#ifdef PCI_IOV +#include +#include +#include +#endif static const char mlx5_version[] = "Mellanox Core driver " DRIVER_VERSION " (" DRIVER_RELDATE ")"; @@ -513,12 +518,13 @@ static int set_hca_ctrl(struct mlx5_core_dev *dev) return err; } -static int mlx5_core_enable_hca(struct mlx5_core_dev *dev) +static int mlx5_core_enable_hca(struct mlx5_core_dev *dev, u16 func_id) { u32 out[MLX5_ST_SZ_DW(enable_hca_out)] = {0}; u32 in[MLX5_ST_SZ_DW(enable_hca_in)] = {0}; MLX5_SET(enable_hca_in, in, opcode, MLX5_CMD_OP_ENABLE_HCA); + MLX5_SET(enable_hca_in, in, function_id, func_id); return mlx5_cmd_exec(dev, &in, sizeof(in), &out, sizeof(out)); } @@ -853,8 +859,11 @@ mlx5_firmware_update(struct mlx5_core_dev *dev) static int mlx5_pci_init(struct mlx5_core_dev *dev, struct mlx5_priv *priv) { struct pci_dev *pdev = dev->pdev; - int err = 0; + device_t bsddev; + int err; + pdev = dev->pdev; + bsddev = pdev->dev.bsddev; pci_set_drvdata(dev->pdev, dev); strncpy(priv->name, dev_name(&pdev->dev), MLX5_MAX_NAME_LEN); priv->name[MLX5_MAX_NAME_LEN - 1] = 0; @@ -905,6 +914,10 @@ err_dbg: static void mlx5_pci_close(struct mlx5_core_dev *dev, struct mlx5_priv *priv) { +#ifdef PCI_IOV + if (MLX5_CAP_GEN(dev, eswitch_flow_table)) + pci_iov_detach(dev->pdev->dev.bsddev); +#endif iounmap(dev->iseg); release_bar(dev->pdev); mlx5_pci_disable_device(dev); @@ -1035,7 +1048,7 @@ static int mlx5_load_one(struct mlx5_core_dev *dev, st goto err_cmd_cleanup; } - err = mlx5_core_enable_hca(dev); + err = mlx5_core_enable_hca(dev, 0); if (err) { mlx5_core_err(dev, "enable hca failed\n"); goto err_cmd_cleanup; @@ -1295,6 +1308,9 @@ static int init_one(struct pci_dev *pdev, struct mlx5_core_dev *dev; struct mlx5_priv *priv; device_t bsddev = pdev->dev.bsddev; +#ifdef PCI_IOV + nvlist_t *pf_schema, *vf_schema; +#endif int i,err; struct sysctl_oid *pme_sysctl_node; struct sysctl_oid *pme_err_sysctl_node; @@ -1578,6 +1594,19 @@ static int init_one(struct pci_dev *pdev, mlx5_firmware_update(dev); +#ifdef PCI_IOV + if (MLX5_CAP_GEN(dev, vport_group_manager)) { + pf_schema = pci_iov_schema_alloc_node(); + vf_schema = pci_iov_schema_alloc_node(); + err = pci_iov_attach(bsddev, pf_schema, vf_schema); + if (err != 0) { + device_printf(bsddev, + "Failed to initialize SR-IOV support, error %d\n", + err); + } + } +#endif + pci_save_state(bsddev); return 0; @@ -1723,6 +1752,54 @@ static const struct pci_error_handlers mlx5_err_handle .resume = mlx5_pci_resume }; +#ifdef PCI_IOV +static int +mlx5_iov_init(device_t dev, uint16_t num_vfs, const nvlist_t *pf_config) +{ + struct pci_dev *pdev; + struct mlx5_core_dev *core_dev; + struct mlx5_priv *priv; + + pdev = device_get_softc(dev); + core_dev = pci_get_drvdata(pdev); + priv = &core_dev->priv; + + return (0); +} + +static void +mlx5_iov_uninit(device_t dev) +{ + struct pci_dev *pdev; + struct mlx5_core_dev *core_dev; + struct mlx5_priv *priv; + + pdev = device_get_softc(dev); + core_dev = pci_get_drvdata(pdev); + priv = &core_dev->priv; +} + +static int +mlx5_iov_add_vf(device_t dev, uint16_t vfnum, const nvlist_t *vf_config) +{ + struct pci_dev *pdev; + struct mlx5_core_dev *core_dev; + struct mlx5_priv *priv; + int error; + + pdev = device_get_softc(dev); + core_dev = pci_get_drvdata(pdev); + priv = &core_dev->priv; + + error = -mlx5_core_enable_hca(core_dev, vfnum + 1); + if (error != 0) { + mlx5_core_err(core_dev, "enabling VF %d failed, error %d\n", + vfnum, error); + } + return (error); +} +#endif + static int mlx5_try_fast_unload(struct mlx5_core_dev *dev) { bool fast_teardown, force_teardown; @@ -1857,7 +1934,12 @@ struct pci_driver mlx5_core_driver = { .shutdown = shutdown_one, .probe = init_one, .remove = remove_one, - .err_handler = &mlx5_err_handler + .err_handler = &mlx5_err_handler, +#ifdef PCI_IOV + .bsd_iov_init = mlx5_iov_init, + .bsd_iov_uninit = mlx5_iov_uninit, + .bsd_iov_add_vf = mlx5_iov_add_vf, +#endif }; static int __init init(void) From owner-svn-src-head@freebsd.org Wed Mar 18 22:21:43 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 97AA826F28C; Wed, 18 Mar 2020 22:21:43 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jPdz1rZkz3N13; Wed, 18 Mar 2020 22:21:43 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id E5F47DF7; Wed, 18 Mar 2020 22:21:42 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IMLg9v056740; Wed, 18 Mar 2020 22:21:42 GMT (envelope-from tsoome@FreeBSD.org) Received: (from tsoome@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IMLgFb056739; Wed, 18 Mar 2020 22:21:42 GMT (envelope-from tsoome@FreeBSD.org) Message-Id: <202003182221.02IMLgFb056739@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tsoome set sender to tsoome@FreeBSD.org using -f From: Toomas Soome Date: Wed, 18 Mar 2020 22:21:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359099 - head/stand/efi/libefi X-SVN-Group: head X-SVN-Commit-Author: tsoome X-SVN-Commit-Paths: head/stand/efi/libefi X-SVN-Commit-Revision: 359099 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 22:21:43 -0000 Author: tsoome Date: Wed Mar 18 22:21:42 2020 New Revision: 359099 URL: https://svnweb.freebsd.org/changeset/base/359099 Log: loader.efi: handle efi_cons_init() failure cases better if we fail to allocate buffer, set up the TERM_EMU and continue. On output, use TERM_EMU in case we did fail to allocate buffer. Modified: head/stand/efi/libefi/efi_console.c Modified: head/stand/efi/libefi/efi_console.c ============================================================================== --- head/stand/efi/libefi/efi_console.c Wed Mar 18 22:17:01 2020 (r359098) +++ head/stand/efi/libefi/efi_console.c Wed Mar 18 22:21:42 2020 (r359099) @@ -855,27 +855,28 @@ efi_cons_update_mode(void) tp.tp_row = rows; tp.tp_col = cols; buffer = malloc(rows * cols * sizeof(*buffer)); - if (buffer == NULL) - return (false); + if (buffer != NULL) { + teken_set_winsize(&teken, &tp); + a = teken_get_defattr(&teken); - teken_set_winsize(&teken, &tp); - a = teken_get_defattr(&teken); + snprintf(env, sizeof(env), "%d", a->ta_fgcolor); + env_setenv("teken.fg_color", EV_VOLATILE, env, + efi_set_colors, env_nounset); + snprintf(env, sizeof(env), "%d", a->ta_bgcolor); + env_setenv("teken.bg_color", EV_VOLATILE, env, + efi_set_colors, env_nounset); - snprintf(env, sizeof(env), "%d", a->ta_fgcolor); - env_setenv("teken.fg_color", EV_VOLATILE, env, efi_set_colors, - env_nounset); - snprintf(env, sizeof(env), "%d", a->ta_bgcolor); - env_setenv("teken.bg_color", EV_VOLATILE, env, efi_set_colors, - env_nounset); - - for (int row = 0; row < rows; row++) { - for (int col = 0; col < cols; col++) { - buffer[col + row * tp.tp_col].c = ' '; - buffer[col + row * tp.tp_col].a = *a; + for (int row = 0; row < rows; row++) { + for (int col = 0; col < cols; col++) { + buffer[col + row * tp.tp_col].c = ' '; + buffer[col + row * tp.tp_col].a = *a; + } } } - } else { + } + #ifdef TERM_EMU + if (buffer == NULL) { conout->SetAttribute(conout, EFI_TEXT_ATTR(DEFAULT_FGCOLOR, DEFAULT_BGCOLOR)); end_term(); @@ -883,8 +884,8 @@ efi_cons_update_mode(void) curs_move(&curx, &cury, curx, cury); fg_c = DEFAULT_FGCOLOR; bg_c = DEFAULT_BGCOLOR; -#endif } +#endif snprintf(env, sizeof (env), "%u", (unsigned)rows); setenv("LINES", env, 1); @@ -1011,15 +1012,12 @@ efi_cons_putchar(int c) * Don't use Teken when we're doing pure serial, or a multiple console * with video "primary" because that's also serial. */ - if ((mode & (RB_SERIAL | RB_MULTIPLE)) != 0) { + if ((mode & (RB_SERIAL | RB_MULTIPLE)) != 0 || buffer == NULL) { input_byte(ch); return; } - if (buffer != NULL) - teken_input(&teken, &ch, sizeof (ch)); - else - efi_cons_efiputchar(c); + teken_input(&teken, &ch, sizeof (ch)); } static int From owner-svn-src-head@freebsd.org Wed Mar 18 22:29:12 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 11A8F26F40F for ; Wed, 18 Mar 2020 22:29:12 +0000 (UTC) (envelope-from tsoome@me.com) Received: from pv50p00im-ztdg10021201.me.com (pv50p00im-ztdg10021201.me.com [17.58.6.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48jPpY2vGvz4BYP for ; Wed, 18 Mar 2020 22:29:09 +0000 (UTC) (envelope-from tsoome@me.com) Received: from nazgul.lan (148-52-235-80.sta.estpak.ee [80.235.52.148]) by pv50p00im-ztdg10021201.me.com (Postfix) with ESMTPSA id B0E28A40649; Wed, 18 Mar 2020 22:29:05 +0000 (UTC) From: Toomas Soome Message-Id: <4ABF87AE-948F-43A8-940A-744FC2F4DE4D@me.com> Mime-Version: 1.0 (Mac OS X Mail 13.0 \(3608.60.0.2.5\)) Subject: Re: svn commit: r358989 - in head/stand/efi: libefi loader loader/arch/arm loader/arch/arm64 Date: Thu, 19 Mar 2020 00:28:59 +0200 In-Reply-To: <944c641f-b570-1420-6b63-96374217d795@gmail.com> Cc: svn-src-head@freebsd.org, junchoon@dec.sakura.ne.jp To: Ruslan Garipov References: <20200316001745.07df62f72d647b924b657d86@dec.sakura.ne.jp> <746EE981-536F-49AD-9B76-F9F103ECB1F9@me.com> <20200317211614.bbe1b18a32d7863941fffbe8@dec.sakura.ne.jp> <55b1f91b-6157-bfee-cd74-124ed50bc663@gmail.com> <944c641f-b570-1420-6b63-96374217d795@gmail.com> X-Mailer: Apple Mail (2.3608.60.0.2.5) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2020-03-18_07:, , signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1908290000 definitions=main-2003180097 X-Rspamd-Queue-Id: 48jPpY2vGvz4BYP X-Spamd-Bar: - X-Spamd-Result: default: False [-1.93 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; FREEMAIL_FROM(0.00)[me.com]; R_SPF_ALLOW(-0.20)[+ip4:17.58.0.0/16]; MV_CASE(0.50)[]; URI_COUNT_ODD(1.00)[13]; DKIM_TRACE(0.00)[me.com:+]; DMARC_POLICY_ALLOW(-0.50)[me.com,quarantine]; FREEMAIL_TO(0.00)[gmail.com]; RECEIVED_SPAMHAUS_PBL(0.00)[148.52.235.80.khpj7ygk5idzvmvt5x4ziurxhy.zen.dq.spamhaus.net : 127.0.0.10]; RCVD_IN_DNSWL_LOW(-0.10)[45.6.58.17.list.dnswl.org : 127.0.5.1]; MIME_TRACE(0.00)[0:+,1:+,2:~]; FROM_EQ_ENVFROM(0.00)[]; ASN(0.00)[asn:714, ipnet:17.58.0.0/20, country:US]; MID_RHS_MATCH_FROM(0.00)[]; ARC_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[me.com]; R_DKIM_ALLOW(-0.20)[me.com:s=1a1hai]; NEURAL_HAM_MEDIUM(-0.34)[-0.337,0]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; NEURAL_HAM_LONG(-1.00)[-0.995,0]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; IP_SCORE(0.00)[ip: (-3.91), ipnet: 17.58.0.0/20(-2.00), asn: 714(-2.38), country: US(-0.05)]; IP_SCORE_FREEMAIL(0.00)[]; DWL_DNSWL_LOW(-1.00)[me.com.dwl.dnswl.org : 127.0.5.1]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[] Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 22:29:12 -0000 > On 18. Mar 2020, at 20:41, Ruslan Garipov = wrote: >=20 > On 3/18/2020 10:29 PM, Toomas Soome via svn-src-head wrote: >>=20 >>=20 >>> On 18. Mar 2020, at 18:40, Ruslan Garipov = wrote: >>>=20 >>> On 3/17/2020 5:16 PM, Tomoaki AOKI wrote: >>>> Hi! Thanks for your respond. >>>>=20 >>>> Unfortunately, no. >>>> I'm running on ThinkPad P52, which has no com connector installed. >>>> No USB serial interface connected. >>>>=20 >>>> `efi-show -g global -v ConOut` on loader prompt shows >>>>=20 >>>> global NV,BS,RS ConOut =3D >>>> PciRoot(0,0)/Pci((0x1,oxo)/Pci(0x0,0x0)/AcpiAdr(0x80010100) >>>>=20 >>>> Moreover, my previous idea didn't help. >>>>=20 >>>> Neither >>>> console=3D"vidconsole" >>>> console=3D"eficonsole" >>>> console=3D"efi_console" >>>> nor >>>> console=3D"efi" >>>> in /boot/loader.conf works. >>>>=20 >>>> Defining / undefining TERM_EMU on build are untested. >>>>=20 >>>> Is there any setting for /boot/loader.conf to control the behavior? >>>>=20 >>>>=20 >>>> Regards. >>>>=20 >>>>=20 >>>> On Mon, 16 Mar 2020 08:26:56 +0200 >>>> Toomas Soome wrote: >>>>=20 >>>>> Hi! >>>>>=20 >>>>> This means, your system has UART serial device =E3=80=93 you can = check this from loader prompt: efi-show -g global -v ConOut or with = efivar from running system. This w ould trigger efi = console driver to use TERM_EMU, which can be turned off by user and = doing that would cause ESC sequences to be passed directly to console. = Might that be true in your case? >>>>>=20 >>>>> rgds, >>>>> toomas >>>>>=20 >>>>>> On 15. Mar 2020, at 17:17, Tomoaki AOKI = wrote: >>>>>>=20 >>>>>> Hi. >>>>>>=20 >>>>>> This broke loader menu display on efifb. At least on amd64. >>>>>> ESC sequences without ESC character are shown. >>>>>> Key input (at least 1, 2 and enter) works OK. >>>>>> I suspect outputs for SIO is sent to efifb and ESC codes are = ignored. >>>>>>=20 >>>>>> Reverting this fixes the issue. >>> I got the same issue with loader menu when was upgrading from = r358827 to >>> r359028 (x86-64). >>>=20 >>> But unfortunately the broken menu is just a part of my problem. The >>> real pain is that a FreeBSD 13.0-CURRENT system hosted by VMware = ESXi or >>> Workstation doesn't boot anymore after r358989. An ugly = workaround[1] >>> (exiting from the loader menu into the loader prompt, running ls or >>> show, scrolling the result down and then executing boot) I found = some >>> time ago doesn't work anymore. After running boot/boot -s/selecting >>> menu item, a hypervisor just shuts session down with the following >>> message: ``The firmware encountered an unexpected exception. The = virtual >>> machine cannot boot.'' >>>=20 >>> The virtual guests don't have any UART (even USB) serial devices in >>> their settings. efi-show prints result similar to what Tomoaki got: >>>=20 >>> OK efi-show -g global -v CounOut >>> global NV,BS,RS ConOut =3D = PciRoot(0x0)/Pci(0x2,0x0)/AcpiAdr(0x80014310) >>>=20 >>> Undefining TERM_EMU doesn't help. I had completely removed CFLAGS >>> assignment with TERM_EMU from stand/efi/libefi/Makefile and rebuilt >>> kernel/world -- nothing changed. I don't define TERM_EMU in my >>> make.conf or/and src.conf. >>>=20 >>> Reverting this revision fix booting (and menu, of course). >>>=20 >>> FreeBSD on physical hardware boots just fine with this revision, but = has >>> corrupted loader menu. >>>=20 >>> Toomas, please help us to fix this. I can live with the broken = menu, >>> but I don't want to revert this revision every time I will upgrade = my >>> virtual machines after r359028 now. >>=20 >>=20 >> Hi! >>=20 >> The build, are you doing build with -DNO_CLEAN? or can you run make = clean in stand and then build it again? Otherwise, if you can poke me on = irc, I=E2=80=99d like to get to the bottom of this. > Hello! >=20 > I'm sorry, currently I have no access to either IRC, nor my build > machine. Therefore, I can't show you the build log. NO_CLEAN -- no, = I > don't use it. What I've actually done regarding to testing TERM_EMU: = I > removed `CFLAGS+=3D -DTERM_EMU` (and the .if condition wrapping this = line) > from the Makefile, removed /usr/obj directory, and buildworld and > buildkernel then. And then install rebuilt kernel/userland on a = target > machine. Nothing changed, but it should? Please try r359099. >=20 >>=20 >> Regarding the issue with vm, I am afraid the roots are going much = deeper there. I have not got to the exact cause (and therefore a fix), = but the problem is not about this specific patch. The problem is about = memory map, specifically one just before and after we switch off Boot = Services.=20 > That's a very bad news for me. Looking at HEAD's commit list I hope > that's a known problem? Or should I open a PR on bugs.FreeBSD.org = ? PR is always good idea. Finding the exact cause and getting sure fix is = question of time. I have done quite amount of investigation, but I can = not yet point the finger even as there is one known issue identified. = *IF* I am correct about the issue, the fix will take some time as it is = not too trivial. >=20 > Moreover, I believe the next snapshot of the CURRENT (which will be = made > after r358989) made by the release team will be unbootable on VMware > hypervisors. BIOS version is ok. rgds, toomas >=20 >>=20 >> rgds, >> toomas >>=20 >>=20 >>>=20 >>> [1] >>> = https://old.reddit.com/r/freebsd/comments/drxqlm/failed_to_do_efi_boot_on_= a_vmware_virtual_machine/f6om6p2/ = > >>>>>>=20 >>>>>> Not tried (not enough time for now as I'm mainly using = stable/12), >>>>>> but possibly calling efi_cons_probe() from efi_cons_init() would = be >>>>>> needed, as ome codes are moved from the latter to the former. >>>>>>=20 >>>>>>=20 >>>>>>> Author: tsoome >>>>>>> Date: Sat Mar 14 06:36:03 2020 >>>>>>> New Revision: 358989 >>>>>>> URL: https://svnweb.freebsd.org/changeset/base/358989 >>>>>>>=20 >>>>>>> Log: >>>>>>> loader: add comconsole implementation on top of SIO protocol >>>>>>>=20 >>>>>>> Provide comconsole on top of SIO for arm platforms (x86 does use = bios >>>>>> version). >>>>>>>=20 >>>>>>> Added: >>>>>>> head/stand/efi/loader/efiserialio.c (contents, props changed) >>>>>>> Modified: >>>>>>> head/stand/efi/libefi/efi_console.c >>>>>>> head/stand/efi/loader/arch/arm/Makefile.inc >>>>>>> head/stand/efi/loader/arch/arm64/Makefile.inc >>>>>>> head/stand/efi/loader/conf.c >>>>>>> head/stand/efi/loader/main.c >>>>>>>=20 >>>>>>> Modified: head/stand/efi/libefi/efi_console.c >>>>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>>>> --- head/stand/efi/libefi/efi_console.c Sat Mar 14 05:57:22 >>>>>> 2020 (r358988) >>>>>>> +++ head/stand/efi/libefi/efi_console.c >>>>>> Sat Mar 14 06:36:03 2020 (r358989) >>>>>>> @@ -377,9 +377,22 @@ efi_cons_respond(void *s __unused, const = void *buf __u >>>>>>> { >>>>>>> } >>>>>>>=20 >>>>>>> +/* >>>>>>> + * Set up conin/conout/coninex to make sure we have input = ready. >>>>>>> + */ >>>>>>> static void >>>>>>> efi_cons_probe(struct console *cp) >>>>>>> { >>>>>>> + EFI_STATUS status; >>>>>>> + >>>>>>> + conout =3D ST->ConOut; >>>>>>> + conin =3D ST->ConIn; >>>>>>> + >>>>>>> + status =3D BS->OpenProtocol(ST->ConsoleInHandle, >>>>>> &simple_input_ex_guid, >>>>>>> + (void **)&coninex, IH, NULL, >>>>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); >>>>>>> + if (status !=3D EFI_SUCCESS) >>>>>>> + coninex =3D NULL; >>>>>>> + >>>>>>> cp->c_flags |=3D C_PRESENTIN | C_PRESENTOUT; >>>>>>> } >>>>>>>=20 >>>>>>> @@ -889,15 +902,7 @@ efi_cons_init(int arg) >>>>>>> if (conin !=3D NULL) >>>>>>> return (0); >>>>>>>=20 >>>>>>> - conout =3D ST->ConOut; >>>>>>> - conin =3D ST->ConIn; >>>>>>> - >>>>>>> conout->EnableCursor(conout, TRUE); >>>>>>> - status =3D BS->OpenProtocol(ST->ConsoleInHandle, >>>>>> &simple_input_ex_guid, >>>>>>> - (void **)&coninex, IH, NULL, >>>>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); >>>>>>> - if (status !=3D EFI_SUCCESS) >>>>>>> - coninex =3D NULL; >>>>>>> - >>>>>>> if (efi_cons_update_mode()) >>>>>>> return (0); >>>>>>>=20 >>>>>>>=20 >>>>>>> Modified: head/stand/efi/loader/arch/arm/Makefile.inc >>>>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>>>> --- head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 >>>>>> 05:57:22 2020 (r358988) >>>>>>> +++ head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 = 06:36:03 >>>>>> 2020 (r358989) >>>>>>> @@ -1,6 +1,7 @@ >>>>>>> # $FreeBSD$ >>>>>>>=20 >>>>>>> SRCS+=3D exec.c \ >>>>>>> + efiserialio.c \ >>>>>>> start.S >>>>>>>=20 >>>>>>> HAVE_FDT=3Dyes >>>>>>=20 >>>>>> (Snip) >>>>>>=20 >>>>>>> @@ -930,7 +936,6 @@ main(int argc, CHAR16 *argv[]) >>>>>>> if (!has_kbd && (howto & RB_PROBE)) >>>>>>> howto |=3D RB_SERIAL | RB_MULTIPLE; >>>>>>> howto &=3D ~RB_PROBE; >>>>>>> - uhowto =3D parse_uefi_con_out(); >>>>>>>=20 >>>>>>> /* >>>>>>> * Read additional environment variables from the boot = device's >>>>>>=20 >>>>>> --=20 >>>>>> Tomoaki AOKI From owner-svn-src-head@freebsd.org Wed Mar 18 22:30:57 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id DBE5626F46C; Wed, 18 Mar 2020 22:30:57 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jPrd5yV4z4GqX; Wed, 18 Mar 2020 22:30:57 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C4CE3E83; Wed, 18 Mar 2020 22:30:57 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IMUvQ6062479; Wed, 18 Mar 2020 22:30:57 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IMUvAD062474; Wed, 18 Mar 2020 22:30:57 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003182230.02IMUvAD062474@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 18 Mar 2020 22:30:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359100 - in head/sys: dev/mlx5 dev/mlx5/mlx5_core modules/mlx5 X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in head/sys: dev/mlx5 dev/mlx5/mlx5_core modules/mlx5 X-SVN-Commit-Revision: 359100 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 22:30:58 -0000 Author: kib Date: Wed Mar 18 22:30:56 2020 New Revision: 359100 URL: https://svnweb.freebsd.org/changeset/base/359100 Log: mlx5: Restore eswitch management code from attic. Reviewed by: hselasky Sponsored by: Mellanox Technologies MFC after: 2 weeks Added: head/sys/dev/mlx5/mlx5_core/eswitch.h (contents, props changed) head/sys/dev/mlx5/mlx5_core/flow_table.h (contents, props changed) head/sys/dev/mlx5/mlx5_core/mlx5_eswitch.c (contents, props changed) Modified: head/sys/dev/mlx5/driver.h head/sys/modules/mlx5/Makefile Modified: head/sys/dev/mlx5/driver.h ============================================================================== --- head/sys/dev/mlx5/driver.h Wed Mar 18 22:21:42 2020 (r359099) +++ head/sys/dev/mlx5/driver.h Wed Mar 18 22:30:56 2020 (r359100) @@ -628,6 +628,8 @@ struct mlx5_priv { struct mlx5_rl_table rl_table; #endif struct mlx5_pme_stats pme_stats; + + struct mlx5_eswitch *eswitch; }; enum mlx5_device_state { Added: head/sys/dev/mlx5/mlx5_core/eswitch.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/mlx5/mlx5_core/eswitch.h Wed Mar 18 22:30:56 2020 (r359100) @@ -0,0 +1,169 @@ +/*- + * Copyright (c) 2013-2017, Mellanox Technologies, Ltd. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS `AS IS' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef __MLX5_ESWITCH_H__ +#define __MLX5_ESWITCH_H__ + +#include +#include + +#define MLX5_MAX_UC_PER_VPORT(dev) \ + (1 << MLX5_CAP_GEN(dev, log_max_current_uc_list)) + +#define MLX5_MAX_MC_PER_VPORT(dev) \ + (1 << MLX5_CAP_GEN(dev, log_max_current_mc_list)) + +#define MLX5_L2_ADDR_HASH_SIZE (BIT(BITS_PER_BYTE)) +#define MLX5_L2_ADDR_HASH(addr) (addr[5]) + +/* L2 -mac address based- hash helpers */ +struct l2addr_node { + struct hlist_node hlist; + u8 addr[ETH_ALEN]; +}; + +#define for_each_l2hash_node(hn, tmp, hash, i) \ + for (i = 0; i < MLX5_L2_ADDR_HASH_SIZE; i++) \ + hlist_for_each_entry_safe(hn, tmp, &hash[i], hlist) + +#define l2addr_hash_find(hash, mac, type) ({ \ + int ix = MLX5_L2_ADDR_HASH(mac); \ + bool found = false; \ + type *ptr = NULL; \ + \ + hlist_for_each_entry(ptr, &hash[ix], node.hlist) \ + if (ether_addr_equal(ptr->node.addr, mac)) {\ + found = true; \ + break; \ + } \ + if (!found) \ + ptr = NULL; \ + ptr; \ +}) + +#define l2addr_hash_add(hash, mac, type, gfp) ({ \ + int ix = MLX5_L2_ADDR_HASH(mac); \ + type *ptr = NULL; \ + \ + ptr = kzalloc(sizeof(type), gfp); \ + if (ptr) { \ + ether_addr_copy(ptr->node.addr, mac); \ + hlist_add_head(&ptr->node.hlist, &hash[ix]);\ + } \ + ptr; \ +}) + +#define l2addr_hash_del(ptr) ({ \ + hlist_del(&ptr->node.hlist); \ + kfree(ptr); \ +}) + +struct vport_ingress { + struct mlx5_flow_table *acl; + struct mlx5_flow_group *drop_grp; + struct mlx5_flow_rule *drop_rule; +}; + +struct vport_egress { + struct mlx5_flow_table *acl; + struct mlx5_flow_group *allowed_vlans_grp; + struct mlx5_flow_group *drop_grp; + struct mlx5_flow_rule *allowed_vlan; + struct mlx5_flow_rule *drop_rule; +}; + +struct mlx5_vport { + struct mlx5_core_dev *dev; + int vport; + struct hlist_head uc_list[MLX5_L2_ADDR_HASH_SIZE]; + struct hlist_head mc_list[MLX5_L2_ADDR_HASH_SIZE]; + struct work_struct vport_change_handler; + + struct vport_ingress ingress; + struct vport_egress egress; + + u16 vlan; + u8 qos; + struct mutex state_lock; /* protect dynamic state changes */ + /* This spinlock protects access to vport data, between + * "esw_vport_disable" and ongoing interrupt "mlx5_eswitch_vport_event" + * once vport marked as disabled new interrupts are discarded. + */ + spinlock_t lock; /* vport events sync */ + bool enabled; + u16 enabled_events; +}; + +struct mlx5_l2_table { + struct hlist_head l2_hash[MLX5_L2_ADDR_HASH_SIZE]; + u32 size; + unsigned long *bitmap; +}; + +struct mlx5_eswitch_fdb { + void *fdb; + struct mlx5_flow_group *addr_grp; +}; + +struct mlx5_eswitch { + struct mlx5_core_dev *dev; + struct mlx5_l2_table l2_table; + struct mlx5_eswitch_fdb fdb_table; + struct hlist_head mc_table[MLX5_L2_ADDR_HASH_SIZE]; + struct workqueue_struct *work_queue; + struct mlx5_vport *vports; + int total_vports; + int enabled_vports; +}; + +struct mlx5_esw_vport_info { + __u32 vf; + __u8 mac[32]; + __u32 vlan; + __u32 qos; + __u32 spoofchk; + __u32 linkstate; + __u32 min_tx_rate; + __u32 max_tx_rate; +}; + +/* E-Switch API */ +int mlx5_eswitch_init(struct mlx5_core_dev *dev); +void mlx5_eswitch_cleanup(struct mlx5_eswitch *esw); +void mlx5_eswitch_vport_event(struct mlx5_eswitch *esw, struct mlx5_eqe *eqe); +int mlx5_eswitch_enable_sriov(struct mlx5_eswitch *esw, int nvfs); +void mlx5_eswitch_disable_sriov(struct mlx5_eswitch *esw); +int mlx5_eswitch_set_vport_mac(struct mlx5_eswitch *esw, + int vport, u8 mac[ETH_ALEN]); +int mlx5_eswitch_set_vport_state(struct mlx5_eswitch *esw, + int vport, int link_state); +int mlx5_eswitch_set_vport_vlan(struct mlx5_eswitch *esw, + int vport, u16 vlan, u8 qos); +int mlx5_eswitch_get_vport_config(struct mlx5_eswitch *esw, + int vport, struct mlx5_esw_vport_info *evi); + +#endif /* __MLX5_ESWITCH_H__ */ Added: head/sys/dev/mlx5/mlx5_core/flow_table.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/mlx5/mlx5_core/flow_table.h Wed Mar 18 22:30:56 2020 (r359100) @@ -0,0 +1,65 @@ +/*- + * Copyright (c) 2013-2017, Mellanox Technologies, Ltd. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS `AS IS' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef MLX5_FLOW_TABLE_H +#define MLX5_FLOW_TABLE_H + +#include + +#define MLX5_SET_FLOW_TABLE_ROOT_OPMOD_SET 0x0 +#define MLX5_SET_FLOW_TABLE_ROOT_OPMOD_RESET 0x1 + +struct mlx5_flow_table_group { + u8 log_sz; + u8 match_criteria_enable; + u32 match_criteria[MLX5_ST_SZ_DW(fte_match_param)]; +}; + +void *mlx5_create_flow_table(struct mlx5_core_dev *dev, u8 level, u8 table_type, + u16 vport, + u16 num_groups, + struct mlx5_flow_table_group *group); +void mlx5_destroy_flow_table(void *flow_table); +int mlx5_add_flow_table_entry(void *flow_table, u8 match_criteria_enable, + void *match_criteria, void *flow_context, + u32 *flow_index); +int mlx5_del_flow_table_entry(void *flow_table, u32 flow_index); +u32 mlx5_get_flow_table_id(void *flow_table); +int mlx5_set_flow_table_root(struct mlx5_core_dev *mdev, u16 op_mod, + u8 vport_num, u8 table_type, u32 table_id, + u32 underlay_qpn); +void *mlx5_get_flow_table_properties(void *flow_table); +u32 mlx5_set_flow_table_miss_id(void *flow_table, u32 miss_ft_id); + +int mlx5_create_flow_counter(struct mlx5_core_dev *dev, u16 *cnt_id); +void mlx5_destroy_flow_counter(struct mlx5_core_dev *dev, u16 cnt_id); +int mlx5_query_flow_counters(struct mlx5_core_dev *dev, + u32 num_counters, u16 *cnt_ids, + struct mlx5_traffic_counter *cnt_data); +int mlx5_reset_flow_counter(struct mlx5_core_dev *dev, u16 cnt_id); + +#endif /* MLX5_FLOW_TABLE_H */ Added: head/sys/dev/mlx5/mlx5_core/mlx5_eswitch.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/mlx5/mlx5_core/mlx5_eswitch.c Wed Mar 18 22:30:56 2020 (r359100) @@ -0,0 +1,1382 @@ +/*- + * Copyright (c) 2013-2017, Mellanox Technologies, Ltd. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS `AS IS' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#include +#include +#include +#include +#include +#include "mlx5_core.h" +#include "eswitch.h" + +#define UPLINK_VPORT 0xFFFF + +#define MLX5_DEBUG_ESWITCH_MASK BIT(3) + +#define esw_info(dev, format, ...) \ + printf("mlx5_core: INFO: ""(%s): E-Switch: " format, (dev)->priv.name, ##__VA_ARGS__) + +#define esw_warn(dev, format, ...) \ + printf("mlx5_core: WARN: ""(%s): E-Switch: " format, (dev)->priv.name, ##__VA_ARGS__) + +#define esw_debug(dev, format, ...) \ + mlx5_core_dbg_mask(dev, MLX5_DEBUG_ESWITCH_MASK, format, ##__VA_ARGS__) + +enum { + MLX5_ACTION_NONE = 0, + MLX5_ACTION_ADD = 1, + MLX5_ACTION_DEL = 2, +}; + +/* E-Switch UC L2 table hash node */ +struct esw_uc_addr { + struct l2addr_node node; + u32 table_index; + u32 vport; +}; + +/* E-Switch MC FDB table hash node */ +struct esw_mc_addr { /* SRIOV only */ + struct l2addr_node node; + struct mlx5_flow_rule *uplink_rule; /* Forward to uplink rule */ + u32 refcnt; +}; + +/* Vport UC/MC hash node */ +struct vport_addr { + struct l2addr_node node; + u8 action; + u32 vport; + struct mlx5_flow_rule *flow_rule; /* SRIOV only */ +}; + +enum { + UC_ADDR_CHANGE = BIT(0), + MC_ADDR_CHANGE = BIT(1), +}; + +/* Vport context events */ +#define SRIOV_VPORT_EVENTS (UC_ADDR_CHANGE | \ + MC_ADDR_CHANGE) + +static int arm_vport_context_events_cmd(struct mlx5_core_dev *dev, u16 vport, + u32 events_mask) +{ + int in[MLX5_ST_SZ_DW(modify_nic_vport_context_in)] = {0}; + int out[MLX5_ST_SZ_DW(modify_nic_vport_context_out)] = {0}; + void *nic_vport_ctx; + + MLX5_SET(modify_nic_vport_context_in, in, + opcode, MLX5_CMD_OP_MODIFY_NIC_VPORT_CONTEXT); + MLX5_SET(modify_nic_vport_context_in, in, field_select.change_event, 1); + MLX5_SET(modify_nic_vport_context_in, in, vport_number, vport); + if (vport) + MLX5_SET(modify_nic_vport_context_in, in, other_vport, 1); + nic_vport_ctx = MLX5_ADDR_OF(modify_nic_vport_context_in, + in, nic_vport_context); + + MLX5_SET(nic_vport_context, nic_vport_ctx, arm_change_event, 1); + + if (events_mask & UC_ADDR_CHANGE) + MLX5_SET(nic_vport_context, nic_vport_ctx, + event_on_uc_address_change, 1); + if (events_mask & MC_ADDR_CHANGE) + MLX5_SET(nic_vport_context, nic_vport_ctx, + event_on_mc_address_change, 1); + + return mlx5_cmd_exec(dev, in, sizeof(in), out, sizeof(out)); +} + +/* E-Switch vport context HW commands */ +static int query_esw_vport_context_cmd(struct mlx5_core_dev *mdev, u32 vport, + u32 *out, int outlen) +{ + u32 in[MLX5_ST_SZ_DW(query_esw_vport_context_in)] = {0}; + + MLX5_SET(query_nic_vport_context_in, in, opcode, + MLX5_CMD_OP_QUERY_ESW_VPORT_CONTEXT); + + MLX5_SET(query_esw_vport_context_in, in, vport_number, vport); + if (vport) + MLX5_SET(query_esw_vport_context_in, in, other_vport, 1); + + return mlx5_cmd_exec(mdev, in, sizeof(in), out, outlen); +} + +static int query_esw_vport_cvlan(struct mlx5_core_dev *dev, u32 vport, + u16 *vlan, u8 *qos) +{ + u32 out[MLX5_ST_SZ_DW(query_esw_vport_context_out)] = {0}; + int err; + bool cvlan_strip; + bool cvlan_insert; + + *vlan = 0; + *qos = 0; + + if (!MLX5_CAP_ESW(dev, vport_cvlan_strip) || + !MLX5_CAP_ESW(dev, vport_cvlan_insert_if_not_exist)) + return -ENOTSUPP; + + err = query_esw_vport_context_cmd(dev, vport, out, sizeof(out)); + if (err) + goto out; + + cvlan_strip = MLX5_GET(query_esw_vport_context_out, out, + esw_vport_context.vport_cvlan_strip); + + cvlan_insert = MLX5_GET(query_esw_vport_context_out, out, + esw_vport_context.vport_cvlan_insert); + + if (cvlan_strip || cvlan_insert) { + *vlan = MLX5_GET(query_esw_vport_context_out, out, + esw_vport_context.cvlan_id); + *qos = MLX5_GET(query_esw_vport_context_out, out, + esw_vport_context.cvlan_pcp); + } + + esw_debug(dev, "Query Vport[%d] cvlan: VLAN %d qos=%d\n", + vport, *vlan, *qos); +out: + return err; +} + +static int modify_esw_vport_context_cmd(struct mlx5_core_dev *dev, u16 vport, + void *in, int inlen) +{ + u32 out[MLX5_ST_SZ_DW(modify_esw_vport_context_out)] = {0}; + + MLX5_SET(modify_esw_vport_context_in, in, vport_number, vport); + if (vport) + MLX5_SET(modify_esw_vport_context_in, in, other_vport, 1); + + MLX5_SET(modify_esw_vport_context_in, in, opcode, + MLX5_CMD_OP_MODIFY_ESW_VPORT_CONTEXT); + + return mlx5_cmd_exec(dev, in, inlen, out, sizeof(out)); +} + +static int modify_esw_vport_cvlan(struct mlx5_core_dev *dev, u32 vport, + u16 vlan, u8 qos, bool set) +{ + u32 in[MLX5_ST_SZ_DW(modify_esw_vport_context_in)] = {0}; + + if (!MLX5_CAP_ESW(dev, vport_cvlan_strip) || + !MLX5_CAP_ESW(dev, vport_cvlan_insert_if_not_exist)) + return -ENOTSUPP; + + esw_debug(dev, "Set Vport[%d] VLAN %d qos %d set=%d\n", + vport, vlan, qos, set); + + if (set) { + MLX5_SET(modify_esw_vport_context_in, in, + esw_vport_context.vport_cvlan_strip, 1); + /* insert only if no vlan in packet */ + MLX5_SET(modify_esw_vport_context_in, in, + esw_vport_context.vport_cvlan_insert, 1); + MLX5_SET(modify_esw_vport_context_in, in, + esw_vport_context.cvlan_pcp, qos); + MLX5_SET(modify_esw_vport_context_in, in, + esw_vport_context.cvlan_id, vlan); + } + + MLX5_SET(modify_esw_vport_context_in, in, + field_select.vport_cvlan_strip, 1); + MLX5_SET(modify_esw_vport_context_in, in, + field_select.vport_cvlan_insert, 1); + + return modify_esw_vport_context_cmd(dev, vport, in, sizeof(in)); +} + +/* HW L2 Table (MPFS) management */ +static int set_l2_table_entry_cmd(struct mlx5_core_dev *dev, u32 index, + u8 *mac, u8 vlan_valid, u16 vlan) +{ + u32 in[MLX5_ST_SZ_DW(set_l2_table_entry_in)] = {0}; + u32 out[MLX5_ST_SZ_DW(set_l2_table_entry_out)] = {0}; + u8 *in_mac_addr; + + MLX5_SET(set_l2_table_entry_in, in, opcode, + MLX5_CMD_OP_SET_L2_TABLE_ENTRY); + MLX5_SET(set_l2_table_entry_in, in, table_index, index); + MLX5_SET(set_l2_table_entry_in, in, vlan_valid, vlan_valid); + MLX5_SET(set_l2_table_entry_in, in, vlan, vlan); + + in_mac_addr = MLX5_ADDR_OF(set_l2_table_entry_in, in, mac_address); + ether_addr_copy(&in_mac_addr[2], mac); + + return mlx5_cmd_exec(dev, in, sizeof(in), out, sizeof(out)); +} + +static int del_l2_table_entry_cmd(struct mlx5_core_dev *dev, u32 index) +{ + u32 in[MLX5_ST_SZ_DW(delete_l2_table_entry_in)] = {0}; + u32 out[MLX5_ST_SZ_DW(delete_l2_table_entry_out)] = {0}; + + MLX5_SET(delete_l2_table_entry_in, in, opcode, + MLX5_CMD_OP_DELETE_L2_TABLE_ENTRY); + MLX5_SET(delete_l2_table_entry_in, in, table_index, index); + return mlx5_cmd_exec(dev, in, sizeof(in), out, sizeof(out)); +} + +static int alloc_l2_table_index(struct mlx5_l2_table *l2_table, u32 *ix) +{ + int err = 0; + + *ix = find_first_zero_bit(l2_table->bitmap, l2_table->size); + if (*ix >= l2_table->size) + err = -ENOSPC; + else + __set_bit(*ix, l2_table->bitmap); + + return err; +} + +static void free_l2_table_index(struct mlx5_l2_table *l2_table, u32 ix) +{ + __clear_bit(ix, l2_table->bitmap); +} + +static int set_l2_table_entry(struct mlx5_core_dev *dev, u8 *mac, + u8 vlan_valid, u16 vlan, + u32 *index) +{ + struct mlx5_l2_table *l2_table = &dev->priv.eswitch->l2_table; + int err; + + err = alloc_l2_table_index(l2_table, index); + if (err) + return err; + + err = set_l2_table_entry_cmd(dev, *index, mac, vlan_valid, vlan); + if (err) + free_l2_table_index(l2_table, *index); + + return err; +} + +static void del_l2_table_entry(struct mlx5_core_dev *dev, u32 index) +{ + struct mlx5_l2_table *l2_table = &dev->priv.eswitch->l2_table; + + del_l2_table_entry_cmd(dev, index); + free_l2_table_index(l2_table, index); +} + +/* E-Switch FDB */ +static struct mlx5_flow_rule * +esw_fdb_set_vport_rule(struct mlx5_eswitch *esw, u8 mac[ETH_ALEN], u32 vport) +{ + int match_header = MLX5_MATCH_OUTER_HEADERS; + struct mlx5_flow_destination dest; + struct mlx5_flow_rule *flow_rule = NULL; + u32 *match_v; + u32 *match_c; + u8 *dmac_v; + u8 *dmac_c; + + match_v = kzalloc(MLX5_ST_SZ_BYTES(fte_match_param), GFP_KERNEL); + match_c = kzalloc(MLX5_ST_SZ_BYTES(fte_match_param), GFP_KERNEL); + if (!match_v || !match_c) { + printf("mlx5_core: WARN: ""FDB: Failed to alloc match parameters\n"); + goto out; + } + dmac_v = MLX5_ADDR_OF(fte_match_param, match_v, + outer_headers.dmac_47_16); + dmac_c = MLX5_ADDR_OF(fte_match_param, match_c, + outer_headers.dmac_47_16); + + ether_addr_copy(dmac_v, mac); + /* Match criteria mask */ + memset(dmac_c, 0xff, 6); + + dest.type = MLX5_FLOW_CONTEXT_DEST_TYPE_VPORT; + dest.vport_num = vport; + + esw_debug(esw->dev, + "\tFDB add rule dmac_v(%pM) dmac_c(%pM) -> vport(%d)\n", + dmac_v, dmac_c, vport); + flow_rule = + mlx5_add_flow_rule(esw->fdb_table.fdb, + match_header, + match_c, + match_v, + MLX5_FLOW_CONTEXT_ACTION_FWD_DEST, + 0, &dest); + if (IS_ERR_OR_NULL(flow_rule)) { + printf("mlx5_core: WARN: ""FDB: Failed to add flow rule: dmac_v(%pM) dmac_c(%pM) -> vport(%d), err(%ld)\n", dmac_v, dmac_c, vport, PTR_ERR(flow_rule)); + flow_rule = NULL; + } +out: + kfree(match_v); + kfree(match_c); + return flow_rule; +} + +static int esw_create_fdb_table(struct mlx5_eswitch *esw) +{ + int inlen = MLX5_ST_SZ_BYTES(create_flow_group_in); + struct mlx5_core_dev *dev = esw->dev; + struct mlx5_flow_namespace *root_ns; + struct mlx5_flow_table *fdb; + struct mlx5_flow_group *g; + void *match_criteria; + int table_size; + u32 *flow_group_in; + u8 *dmac; + int err = 0; + + esw_debug(dev, "Create FDB log_max_size(%d)\n", + MLX5_CAP_ESW_FLOWTABLE_FDB(dev, log_max_ft_size)); + + root_ns = mlx5_get_flow_namespace(dev, MLX5_FLOW_NAMESPACE_FDB); + if (!root_ns) { + esw_warn(dev, "Failed to get FDB flow namespace\n"); + return -ENOMEM; + } + + flow_group_in = mlx5_vzalloc(inlen); + if (!flow_group_in) + return -ENOMEM; + memset(flow_group_in, 0, inlen); + + /* (-2) Since MaorG said so .. */ + table_size = BIT(MLX5_CAP_ESW_FLOWTABLE_FDB(dev, log_max_ft_size)) - 2; + + fdb = mlx5_create_flow_table(root_ns, 0, "FDB", table_size); + if (IS_ERR_OR_NULL(fdb)) { + err = PTR_ERR(fdb); + esw_warn(dev, "Failed to create FDB Table err %d\n", err); + goto out; + } + + MLX5_SET(create_flow_group_in, flow_group_in, match_criteria_enable, + MLX5_MATCH_OUTER_HEADERS); + match_criteria = MLX5_ADDR_OF(create_flow_group_in, flow_group_in, match_criteria); + dmac = MLX5_ADDR_OF(fte_match_param, match_criteria, outer_headers.dmac_47_16); + MLX5_SET(create_flow_group_in, flow_group_in, start_flow_index, 0); + MLX5_SET(create_flow_group_in, flow_group_in, end_flow_index, table_size - 1); + eth_broadcast_addr(dmac); + + g = mlx5_create_flow_group(fdb, flow_group_in); + if (IS_ERR_OR_NULL(g)) { + err = PTR_ERR(g); + esw_warn(dev, "Failed to create flow group err(%d)\n", err); + goto out; + } + + esw->fdb_table.addr_grp = g; + esw->fdb_table.fdb = fdb; +out: + kfree(flow_group_in); + if (err && !IS_ERR_OR_NULL(fdb)) + mlx5_destroy_flow_table(fdb); + return err; +} + +static void esw_destroy_fdb_table(struct mlx5_eswitch *esw) +{ + if (!esw->fdb_table.fdb) + return; + + esw_debug(esw->dev, "Destroy FDB Table\n"); + mlx5_destroy_flow_group(esw->fdb_table.addr_grp); + mlx5_destroy_flow_table(esw->fdb_table.fdb); + esw->fdb_table.fdb = NULL; + esw->fdb_table.addr_grp = NULL; +} + +/* E-Switch vport UC/MC lists management */ +typedef int (*vport_addr_action)(struct mlx5_eswitch *esw, + struct vport_addr *vaddr); + +static int esw_add_uc_addr(struct mlx5_eswitch *esw, struct vport_addr *vaddr) +{ + struct hlist_head *hash = esw->l2_table.l2_hash; + struct esw_uc_addr *esw_uc; + u8 *mac = vaddr->node.addr; + u32 vport = vaddr->vport; + int err; + + esw_uc = l2addr_hash_find(hash, mac, struct esw_uc_addr); + if (esw_uc) { + esw_warn(esw->dev, + "Failed to set L2 mac(%pM) for vport(%d), mac is already in use by vport(%d)\n", + mac, vport, esw_uc->vport); + return -EEXIST; + } + + esw_uc = l2addr_hash_add(hash, mac, struct esw_uc_addr, GFP_KERNEL); + if (!esw_uc) + return -ENOMEM; + esw_uc->vport = vport; + + err = set_l2_table_entry(esw->dev, mac, 0, 0, &esw_uc->table_index); + if (err) + goto abort; + + if (esw->fdb_table.fdb) /* SRIOV is enabled: Forward UC MAC to vport */ + vaddr->flow_rule = esw_fdb_set_vport_rule(esw, mac, vport); + + esw_debug(esw->dev, "\tADDED UC MAC: vport[%d] %pM index:%d fr(%p)\n", + vport, mac, esw_uc->table_index, vaddr->flow_rule); + return err; +abort: + l2addr_hash_del(esw_uc); + return err; +} + +static int esw_del_uc_addr(struct mlx5_eswitch *esw, struct vport_addr *vaddr) +{ + struct hlist_head *hash = esw->l2_table.l2_hash; + struct esw_uc_addr *esw_uc; + u8 *mac = vaddr->node.addr; + u32 vport = vaddr->vport; + + esw_uc = l2addr_hash_find(hash, mac, struct esw_uc_addr); + if (!esw_uc || esw_uc->vport != vport) { + esw_debug(esw->dev, + "MAC(%pM) doesn't belong to vport (%d)\n", + mac, vport); + return -EINVAL; + } + esw_debug(esw->dev, "\tDELETE UC MAC: vport[%d] %pM index:%d fr(%p)\n", + vport, mac, esw_uc->table_index, vaddr->flow_rule); + + del_l2_table_entry(esw->dev, esw_uc->table_index); + + if (vaddr->flow_rule) + mlx5_del_flow_rule(vaddr->flow_rule); + vaddr->flow_rule = NULL; + + l2addr_hash_del(esw_uc); + return 0; +} + +static int esw_add_mc_addr(struct mlx5_eswitch *esw, struct vport_addr *vaddr) +{ + struct hlist_head *hash = esw->mc_table; + struct esw_mc_addr *esw_mc; + u8 *mac = vaddr->node.addr; + u32 vport = vaddr->vport; + + if (!esw->fdb_table.fdb) + return 0; + + esw_mc = l2addr_hash_find(hash, mac, struct esw_mc_addr); + if (esw_mc) + goto add; + + esw_mc = l2addr_hash_add(hash, mac, struct esw_mc_addr, GFP_KERNEL); + if (!esw_mc) + return -ENOMEM; + + esw_mc->uplink_rule = /* Forward MC MAC to Uplink */ + esw_fdb_set_vport_rule(esw, mac, UPLINK_VPORT); +add: + esw_mc->refcnt++; + /* Forward MC MAC to vport */ + vaddr->flow_rule = esw_fdb_set_vport_rule(esw, mac, vport); + esw_debug(esw->dev, + "\tADDED MC MAC: vport[%d] %pM fr(%p) refcnt(%d) uplinkfr(%p)\n", + vport, mac, vaddr->flow_rule, + esw_mc->refcnt, esw_mc->uplink_rule); + return 0; +} + +static int esw_del_mc_addr(struct mlx5_eswitch *esw, struct vport_addr *vaddr) +{ + struct hlist_head *hash = esw->mc_table; + struct esw_mc_addr *esw_mc; + u8 *mac = vaddr->node.addr; + u32 vport = vaddr->vport; + + if (!esw->fdb_table.fdb) + return 0; + + esw_mc = l2addr_hash_find(hash, mac, struct esw_mc_addr); + if (!esw_mc) { + esw_warn(esw->dev, + "Failed to find eswitch MC addr for MAC(%pM) vport(%d)", + mac, vport); + return -EINVAL; + } + esw_debug(esw->dev, + "\tDELETE MC MAC: vport[%d] %pM fr(%p) refcnt(%d) uplinkfr(%p)\n", + vport, mac, vaddr->flow_rule, esw_mc->refcnt, + esw_mc->uplink_rule); + + if (vaddr->flow_rule) + mlx5_del_flow_rule(vaddr->flow_rule); + vaddr->flow_rule = NULL; + + if (--esw_mc->refcnt) + return 0; + + if (esw_mc->uplink_rule) + mlx5_del_flow_rule(esw_mc->uplink_rule); + + l2addr_hash_del(esw_mc); + return 0; +} + +/* Apply vport UC/MC list to HW l2 table and FDB table */ +static void esw_apply_vport_addr_list(struct mlx5_eswitch *esw, + u32 vport_num, int list_type) +{ + struct mlx5_vport *vport = &esw->vports[vport_num]; + bool is_uc = list_type == MLX5_NIC_VPORT_LIST_TYPE_UC; + vport_addr_action vport_addr_add; + vport_addr_action vport_addr_del; + struct vport_addr *addr; + struct l2addr_node *node; + struct hlist_head *hash; + struct hlist_node *tmp; + int hi; + + vport_addr_add = is_uc ? esw_add_uc_addr : + esw_add_mc_addr; + vport_addr_del = is_uc ? esw_del_uc_addr : + esw_del_mc_addr; + + hash = is_uc ? vport->uc_list : vport->mc_list; + for_each_l2hash_node(node, tmp, hash, hi) { + addr = container_of(node, struct vport_addr, node); + switch (addr->action) { + case MLX5_ACTION_ADD: + vport_addr_add(esw, addr); + addr->action = MLX5_ACTION_NONE; + break; + case MLX5_ACTION_DEL: + vport_addr_del(esw, addr); + l2addr_hash_del(addr); + break; + } + } +} + +/* Sync vport UC/MC list from vport context */ +static void esw_update_vport_addr_list(struct mlx5_eswitch *esw, + u32 vport_num, int list_type) +{ + struct mlx5_vport *vport = &esw->vports[vport_num]; + bool is_uc = list_type == MLX5_NIC_VPORT_LIST_TYPE_UC; + u8 (*mac_list)[ETH_ALEN]; + struct l2addr_node *node; + struct vport_addr *addr; + struct hlist_head *hash; + struct hlist_node *tmp; + int size; + int err; + int hi; + int i; + + size = is_uc ? MLX5_MAX_UC_PER_VPORT(esw->dev) : + MLX5_MAX_MC_PER_VPORT(esw->dev); + + mac_list = kcalloc(size, ETH_ALEN, GFP_KERNEL); + if (!mac_list) + return; + + hash = is_uc ? vport->uc_list : vport->mc_list; + + for_each_l2hash_node(node, tmp, hash, hi) { + addr = container_of(node, struct vport_addr, node); + addr->action = MLX5_ACTION_DEL; + } + + err = mlx5_query_nic_vport_mac_list(esw->dev, vport_num, list_type, + mac_list, &size); + if (err) + return; + esw_debug(esw->dev, "vport[%d] context update %s list size (%d)\n", + vport_num, is_uc ? "UC" : "MC", size); + + for (i = 0; i < size; i++) { + if (is_uc && !is_valid_ether_addr(mac_list[i])) + continue; + + if (!is_uc && !is_multicast_ether_addr(mac_list[i])) + continue; + + addr = l2addr_hash_find(hash, mac_list[i], struct vport_addr); + if (addr) { + addr->action = MLX5_ACTION_NONE; + continue; + } + + addr = l2addr_hash_add(hash, mac_list[i], struct vport_addr, + GFP_KERNEL); + if (!addr) { + esw_warn(esw->dev, + "Failed to add MAC(%pM) to vport[%d] DB\n", + mac_list[i], vport_num); + continue; + } + addr->vport = vport_num; + addr->action = MLX5_ACTION_ADD; + } + kfree(mac_list); +} + +static void esw_vport_change_handler(struct work_struct *work) +{ + struct mlx5_vport *vport = + container_of(work, struct mlx5_vport, vport_change_handler); + struct mlx5_core_dev *dev = vport->dev; + struct mlx5_eswitch *esw = dev->priv.eswitch; + u8 mac[ETH_ALEN]; + + mlx5_query_nic_vport_mac_address(dev, vport->vport, mac); + esw_debug(dev, "vport[%d] Context Changed: perm mac: %pM\n", + vport->vport, mac); + + if (vport->enabled_events & UC_ADDR_CHANGE) { + esw_update_vport_addr_list(esw, vport->vport, + MLX5_NIC_VPORT_LIST_TYPE_UC); + esw_apply_vport_addr_list(esw, vport->vport, + MLX5_NIC_VPORT_LIST_TYPE_UC); + } + + if (vport->enabled_events & MC_ADDR_CHANGE) { + esw_update_vport_addr_list(esw, vport->vport, + MLX5_NIC_VPORT_LIST_TYPE_MC); + esw_apply_vport_addr_list(esw, vport->vport, + MLX5_NIC_VPORT_LIST_TYPE_MC); + } + + esw_debug(esw->dev, "vport[%d] Context Changed: Done\n", vport->vport); + if (vport->enabled) + arm_vport_context_events_cmd(dev, vport->vport, + vport->enabled_events); +} + +static void esw_vport_enable_egress_acl(struct mlx5_eswitch *esw, + struct mlx5_vport *vport) +{ + int inlen = MLX5_ST_SZ_BYTES(create_flow_group_in); + struct mlx5_flow_group *vlan_grp = NULL; + struct mlx5_flow_group *drop_grp = NULL; + struct mlx5_core_dev *dev = esw->dev; + struct mlx5_flow_namespace *root_ns; + struct mlx5_flow_table *acl; + void *match_criteria; + char table_name[32]; + u32 *flow_group_in; + int table_size = 2; + int err = 0; + + if (!MLX5_CAP_ESW_EGRESS_ACL(dev, ft_support)) + return; + + esw_debug(dev, "Create vport[%d] egress ACL log_max_size(%d)\n", + vport->vport, MLX5_CAP_ESW_EGRESS_ACL(dev, log_max_ft_size)); + + root_ns = mlx5_get_flow_namespace(dev, MLX5_FLOW_NAMESPACE_ESW_EGRESS); + if (!root_ns) { + esw_warn(dev, "Failed to get E-Switch egress flow namespace\n"); + return; + } + + flow_group_in = mlx5_vzalloc(inlen); + if (!flow_group_in) + return; + + snprintf(table_name, 32, "egress_%d", vport->vport); + acl = mlx5_create_vport_flow_table(root_ns, vport->vport, 0, table_name, table_size); + if (IS_ERR_OR_NULL(acl)) { + err = PTR_ERR(acl); + esw_warn(dev, "Failed to create E-Switch vport[%d] egress flow Table, err(%d)\n", + vport->vport, err); + goto out; + } + + MLX5_SET(create_flow_group_in, flow_group_in, match_criteria_enable, MLX5_MATCH_OUTER_HEADERS); + match_criteria = MLX5_ADDR_OF(create_flow_group_in, flow_group_in, match_criteria); + MLX5_SET_TO_ONES(fte_match_param, match_criteria, outer_headers.cvlan_tag); + MLX5_SET_TO_ONES(fte_match_param, match_criteria, outer_headers.first_vid); + MLX5_SET(create_flow_group_in, flow_group_in, start_flow_index, 0); + MLX5_SET(create_flow_group_in, flow_group_in, end_flow_index, 0); + + vlan_grp = mlx5_create_flow_group(acl, flow_group_in); + if (IS_ERR_OR_NULL(vlan_grp)) { + err = PTR_ERR(vlan_grp); + esw_warn(dev, "Failed to create E-Switch vport[%d] egress allowed vlans flow group, err(%d)\n", + vport->vport, err); + goto out; + } + + memset(flow_group_in, 0, inlen); + MLX5_SET(create_flow_group_in, flow_group_in, start_flow_index, 1); + MLX5_SET(create_flow_group_in, flow_group_in, end_flow_index, 1); + drop_grp = mlx5_create_flow_group(acl, flow_group_in); + if (IS_ERR_OR_NULL(drop_grp)) { + err = PTR_ERR(drop_grp); + esw_warn(dev, "Failed to create E-Switch vport[%d] egress drop flow group, err(%d)\n", + vport->vport, err); + goto out; + } + + vport->egress.acl = acl; + vport->egress.drop_grp = drop_grp; + vport->egress.allowed_vlans_grp = vlan_grp; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@freebsd.org Wed Mar 18 22:33:41 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 02FBD26F652; Wed, 18 Mar 2020 22:33:41 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jPvm42xsz4Nvp; Wed, 18 Mar 2020 22:33:40 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 50EC5100F; Wed, 18 Mar 2020 22:33:40 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IMXelb066043; Wed, 18 Mar 2020 22:33:40 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IMXdA0066039; Wed, 18 Mar 2020 22:33:39 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003182233.02IMXdA0066039@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 18 Mar 2020 22:33:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359101 - in head/sys/dev/mlx5: . mlx5_core mlx5_en X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in head/sys/dev/mlx5: . mlx5_core mlx5_en X-SVN-Commit-Revision: 359101 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 22:33:41 -0000 Author: kib Date: Wed Mar 18 22:33:39 2020 New Revision: 359101 URL: https://svnweb.freebsd.org/changeset/base/359101 Log: mlx5: Integrate eswitch and mpfs management code. Reviewed by: hselasky Sponsored by: Mellanox Technologies MFC after: 2 weeks Modified: head/sys/dev/mlx5/mlx5_core/mlx5_eswitch.c head/sys/dev/mlx5/mlx5_core/mlx5_mpfs.c head/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c head/sys/dev/mlx5/mpfs.h Modified: head/sys/dev/mlx5/mlx5_core/mlx5_eswitch.c ============================================================================== --- head/sys/dev/mlx5/mlx5_core/mlx5_eswitch.c Wed Mar 18 22:30:56 2020 (r359100) +++ head/sys/dev/mlx5/mlx5_core/mlx5_eswitch.c Wed Mar 18 22:33:39 2020 (r359101) @@ -30,6 +30,7 @@ #include #include #include +#include #include "mlx5_core.h" #include "eswitch.h" @@ -212,81 +213,6 @@ static int modify_esw_vport_cvlan(struct mlx5_core_dev return modify_esw_vport_context_cmd(dev, vport, in, sizeof(in)); } -/* HW L2 Table (MPFS) management */ -static int set_l2_table_entry_cmd(struct mlx5_core_dev *dev, u32 index, - u8 *mac, u8 vlan_valid, u16 vlan) -{ - u32 in[MLX5_ST_SZ_DW(set_l2_table_entry_in)] = {0}; - u32 out[MLX5_ST_SZ_DW(set_l2_table_entry_out)] = {0}; - u8 *in_mac_addr; - - MLX5_SET(set_l2_table_entry_in, in, opcode, - MLX5_CMD_OP_SET_L2_TABLE_ENTRY); - MLX5_SET(set_l2_table_entry_in, in, table_index, index); - MLX5_SET(set_l2_table_entry_in, in, vlan_valid, vlan_valid); - MLX5_SET(set_l2_table_entry_in, in, vlan, vlan); - - in_mac_addr = MLX5_ADDR_OF(set_l2_table_entry_in, in, mac_address); - ether_addr_copy(&in_mac_addr[2], mac); - - return mlx5_cmd_exec(dev, in, sizeof(in), out, sizeof(out)); -} - -static int del_l2_table_entry_cmd(struct mlx5_core_dev *dev, u32 index) -{ - u32 in[MLX5_ST_SZ_DW(delete_l2_table_entry_in)] = {0}; - u32 out[MLX5_ST_SZ_DW(delete_l2_table_entry_out)] = {0}; - - MLX5_SET(delete_l2_table_entry_in, in, opcode, - MLX5_CMD_OP_DELETE_L2_TABLE_ENTRY); - MLX5_SET(delete_l2_table_entry_in, in, table_index, index); - return mlx5_cmd_exec(dev, in, sizeof(in), out, sizeof(out)); -} - -static int alloc_l2_table_index(struct mlx5_l2_table *l2_table, u32 *ix) -{ - int err = 0; - - *ix = find_first_zero_bit(l2_table->bitmap, l2_table->size); - if (*ix >= l2_table->size) - err = -ENOSPC; - else - __set_bit(*ix, l2_table->bitmap); - - return err; -} - -static void free_l2_table_index(struct mlx5_l2_table *l2_table, u32 ix) -{ - __clear_bit(ix, l2_table->bitmap); -} - -static int set_l2_table_entry(struct mlx5_core_dev *dev, u8 *mac, - u8 vlan_valid, u16 vlan, - u32 *index) -{ - struct mlx5_l2_table *l2_table = &dev->priv.eswitch->l2_table; - int err; - - err = alloc_l2_table_index(l2_table, index); - if (err) - return err; - - err = set_l2_table_entry_cmd(dev, *index, mac, vlan_valid, vlan); - if (err) - free_l2_table_index(l2_table, *index); - - return err; -} - -static void del_l2_table_entry(struct mlx5_core_dev *dev, u32 index) -{ - struct mlx5_l2_table *l2_table = &dev->priv.eswitch->l2_table; - - del_l2_table_entry_cmd(dev, index); - free_l2_table_index(l2_table, index); -} - /* E-Switch FDB */ static struct mlx5_flow_rule * esw_fdb_set_vport_rule(struct mlx5_eswitch *esw, u8 mac[ETH_ALEN], u32 vport) @@ -435,7 +361,7 @@ static int esw_add_uc_addr(struct mlx5_eswitch *esw, s return -ENOMEM; esw_uc->vport = vport; - err = set_l2_table_entry(esw->dev, mac, 0, 0, &esw_uc->table_index); + err = mlx5_mpfs_add_mac(esw->dev, &esw_uc->table_index, mac, 0, 0); if (err) goto abort; @@ -467,7 +393,7 @@ static int esw_del_uc_addr(struct mlx5_eswitch *esw, s esw_debug(esw->dev, "\tDELETE UC MAC: vport[%d] %pM index:%d fr(%p)\n", vport, mac, esw_uc->table_index, vaddr->flow_rule); - del_l2_table_entry(esw->dev, esw_uc->table_index); + mlx5_mpfs_del_mac(esw->dev, esw_uc->table_index); if (vaddr->flow_rule) mlx5_del_flow_rule(vaddr->flow_rule); Modified: head/sys/dev/mlx5/mlx5_core/mlx5_mpfs.c ============================================================================== --- head/sys/dev/mlx5/mlx5_core/mlx5_mpfs.c Wed Mar 18 22:30:56 2020 (r359100) +++ head/sys/dev/mlx5/mlx5_core/mlx5_mpfs.c Wed Mar 18 22:33:39 2020 (r359101) @@ -39,7 +39,8 @@ #define MPFS_UNLOCK(dev) spin_unlock(&(dev)->mpfs.spinlock) int -mlx5_mpfs_add_mac(struct mlx5_core_dev *dev, u32 *p_index, const u8 *mac) +mlx5_mpfs_add_mac(struct mlx5_core_dev *dev, u32 *p_index, const u8 *mac, + u8 vlan_valid, u16 vlan) { const u32 l2table_size = MIN(1U << MLX5_CAP_GEN(dev, log_max_l2_table), MLX5_MPFS_TABLE_MAX); @@ -65,6 +66,8 @@ mlx5_mpfs_add_mac(struct mlx5_core_dev *dev, u32 *p_in MLX5_SET(set_l2_table_entry_in, in, opcode, MLX5_CMD_OP_SET_L2_TABLE_ENTRY); MLX5_SET(set_l2_table_entry_in, in, table_index, index); + MLX5_SET(set_l2_table_entry_in, in, vlan_valid, vlan_valid); + MLX5_SET(set_l2_table_entry_in, in, vlan, vlan); in_mac_addr = MLX5_ADDR_OF(set_l2_table_entry_in, in, mac_address); ether_addr_copy(&in_mac_addr[2], mac); Modified: head/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c ============================================================================== --- head/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c Wed Mar 18 22:30:56 2020 (r359100) +++ head/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c Wed Mar 18 22:33:39 2020 (r359101) @@ -861,7 +861,8 @@ retry: if (mlx5e_add_eth_addr_to_hash(priv->eth_addr.if_uc, hn) == 0) continue; if (hn->mpfs_index == -1U) - mlx5_mpfs_add_mac(priv->mdev, &hn->mpfs_index, hn->ai.addr); + mlx5_mpfs_add_mac(priv->mdev, &hn->mpfs_index, + hn->ai.addr, 0, 0); } /* insert L2 multicast addresses into hash list */ Modified: head/sys/dev/mlx5/mpfs.h ============================================================================== --- head/sys/dev/mlx5/mpfs.h Wed Mar 18 22:30:56 2020 (r359100) +++ head/sys/dev/mlx5/mpfs.h Wed Mar 18 22:33:39 2020 (r359101) @@ -29,7 +29,8 @@ #define _MLX5_MPFS_H_ struct mlx5_core_dev; -int mlx5_mpfs_add_mac(struct mlx5_core_dev *dev, u32 *p_index, const u8 *mac); +int mlx5_mpfs_add_mac(struct mlx5_core_dev *dev, u32 *p_index, const u8 *mac, + u8 vlan_valid, u16 bbvlan); int mlx5_mpfs_del_mac(struct mlx5_core_dev *dev, u32 index); int mlx5_mpfs_init(struct mlx5_core_dev *dev); void mlx5_mpfs_destroy(struct mlx5_core_dev *dev); From owner-svn-src-head@freebsd.org Wed Mar 18 22:38:58 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E9FDC26F7DC; Wed, 18 Mar 2020 22:38:58 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jQ1t1cktz4cmc; Wed, 18 Mar 2020 22:38:58 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id E17281017; Wed, 18 Mar 2020 22:38:57 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IMcvr3066375; Wed, 18 Mar 2020 22:38:57 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IMcvui066374; Wed, 18 Mar 2020 22:38:57 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003182238.02IMcvui066374@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 18 Mar 2020 22:38:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359102 - head/sys/dev/mlx5 X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/dev/mlx5 X-SVN-Commit-Revision: 359102 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 22:38:59 -0000 Author: kib Date: Wed Mar 18 22:38:57 2020 New Revision: 359102 URL: https://svnweb.freebsd.org/changeset/base/359102 Log: mlx5: Add 'follow' vport state, relevant for VFs. Reviewed by: hselasky Sponsored by: Mellanox Technologies MFC after: 2 weeks Modified: head/sys/dev/mlx5/device.h Modified: head/sys/dev/mlx5/device.h ============================================================================== --- head/sys/dev/mlx5/device.h Wed Mar 18 22:33:39 2020 (r359101) +++ head/sys/dev/mlx5/device.h Wed Mar 18 22:38:57 2020 (r359102) @@ -839,6 +839,7 @@ static inline int mlx5_host_is_le(void) enum { VPORT_STATE_DOWN = 0x0, VPORT_STATE_UP = 0x1, + VPORT_STATE_FOLLOW = 0x2, }; enum { From owner-svn-src-head@freebsd.org Wed Mar 18 22:40:28 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 0157426F891; Wed, 18 Mar 2020 22:40:28 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jQ3b4hSVz3CSV; Wed, 18 Mar 2020 22:40:27 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C02F6101B; Wed, 18 Mar 2020 22:40:26 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IMeQFk066535; Wed, 18 Mar 2020 22:40:26 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IMeQ3C066534; Wed, 18 Mar 2020 22:40:26 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003182240.02IMeQ3C066534@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 18 Mar 2020 22:40:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359103 - head/sys/dev/mlx5/mlx5_core X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/dev/mlx5/mlx5_core X-SVN-Commit-Revision: 359103 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 22:40:28 -0000 Author: kib Date: Wed Mar 18 22:40:26 2020 New Revision: 359103 URL: https://svnweb.freebsd.org/changeset/base/359103 Log: mlx5: Use eswitch interface to configure VFs steering. Reviewed by: hselasky Sponsored by: Mellanox Technologies MFC after: 2 weeks Modified: head/sys/dev/mlx5/mlx5_core/mlx5_main.c Modified: head/sys/dev/mlx5/mlx5_core/mlx5_main.c ============================================================================== --- head/sys/dev/mlx5/mlx5_core/mlx5_main.c Wed Mar 18 22:38:57 2020 (r359102) +++ head/sys/dev/mlx5/mlx5_core/mlx5_main.c Wed Mar 18 22:40:26 2020 (r359103) @@ -39,11 +39,13 @@ #include #include #include +#include #include #include #include #include #include "mlx5_core.h" +#include "eswitch.h" #include "fs_core.h" #ifdef PCI_IOV #include @@ -176,6 +178,10 @@ static struct mlx5_profile profiles[] = { }, }; +#ifdef PCI_IOV +static const char iov_mac_addr_name[] = "mac-addr"; +#endif + static int set_dma_caps(struct pci_dev *pdev) { struct mlx5_core_dev *dev = pci_get_drvdata(pdev); @@ -1236,6 +1242,7 @@ static int mlx5_unload_one(struct mlx5_core_dev *dev, mlx5_unregister_device(dev); + mlx5_eswitch_cleanup(dev->priv.eswitch); mlx5_fpga_device_stop(dev); mlx5_mpfs_destroy(dev); mlx5_cleanup_fs(dev); @@ -1596,12 +1603,20 @@ static int init_one(struct pci_dev *pdev, #ifdef PCI_IOV if (MLX5_CAP_GEN(dev, vport_group_manager)) { - pf_schema = pci_iov_schema_alloc_node(); - vf_schema = pci_iov_schema_alloc_node(); - err = pci_iov_attach(bsddev, pf_schema, vf_schema); - if (err != 0) { - device_printf(bsddev, + err = mlx5_eswitch_init(dev); + if (err == 0) { + pf_schema = pci_iov_schema_alloc_node(); + vf_schema = pci_iov_schema_alloc_node(); + pci_iov_schema_add_unicast_mac(vf_schema, + iov_mac_addr_name, 0, NULL); + err = pci_iov_attach(bsddev, pf_schema, vf_schema); + if (err != 0) { + device_printf(bsddev, "Failed to initialize SR-IOV support, error %d\n", + err); + } + } else { + mlx5_core_err(dev, "eswitch init failed, error %d\n", err); } } @@ -1759,12 +1774,14 @@ mlx5_iov_init(device_t dev, uint16_t num_vfs, const nv struct pci_dev *pdev; struct mlx5_core_dev *core_dev; struct mlx5_priv *priv; + int err; pdev = device_get_softc(dev); core_dev = pci_get_drvdata(pdev); priv = &core_dev->priv; - return (0); + err = mlx5_eswitch_enable_sriov(priv->eswitch, num_vfs); + return (-err); } static void @@ -1777,6 +1794,8 @@ mlx5_iov_uninit(device_t dev) pdev = device_get_softc(dev); core_dev = pci_get_drvdata(pdev); priv = &core_dev->priv; + + mlx5_eswitch_disable_sriov(priv->eswitch); } static int @@ -1785,16 +1804,32 @@ mlx5_iov_add_vf(device_t dev, uint16_t vfnum, const nv struct pci_dev *pdev; struct mlx5_core_dev *core_dev; struct mlx5_priv *priv; + const void *mac; + size_t mac_size; int error; pdev = device_get_softc(dev); core_dev = pci_get_drvdata(pdev); priv = &core_dev->priv; + if (nvlist_exists_binary(vf_config, iov_mac_addr_name)) { + mac = nvlist_get_binary(vf_config, iov_mac_addr_name, + &mac_size); + error = -mlx5_eswitch_set_vport_mac(priv->eswitch, + vfnum + 1, __DECONST(u8 *, mac)); + } + + error = -mlx5_eswitch_set_vport_state(priv->eswitch, vfnum + 1, + VPORT_STATE_FOLLOW); + if (error != 0) { + mlx5_core_err(core_dev, + "upping vport for VF %d failed, error %d\n", + vfnum + 1, error); + } error = -mlx5_core_enable_hca(core_dev, vfnum + 1); if (error != 0) { mlx5_core_err(core_dev, "enabling VF %d failed, error %d\n", - vfnum, error); + vfnum + 1, error); } return (error); } From owner-svn-src-head@freebsd.org Wed Mar 18 22:43:40 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id C2F9826FAB7; Wed, 18 Mar 2020 22:43:40 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jQ7J4LPYz3M5t; Wed, 18 Mar 2020 22:43:40 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 225B411D9; Wed, 18 Mar 2020 22:43:40 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IMheO6072035; Wed, 18 Mar 2020 22:43:40 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IMhdiQ072033; Wed, 18 Mar 2020 22:43:39 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003182243.02IMhdiQ072033@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 18 Mar 2020 22:43:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359104 - head/sys/dev/mlx5/mlx5_core X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/dev/mlx5/mlx5_core X-SVN-Commit-Revision: 359104 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 22:43:40 -0000 Author: kib Date: Wed Mar 18 22:43:39 2020 New Revision: 359104 URL: https://svnweb.freebsd.org/changeset/base/359104 Log: mlx5: Read number of VF ports from the SR-IOV cap. Reviewed by: hselasky Sponsored by: Mellanox Technologies MFC after: 2 weeks Modified: head/sys/dev/mlx5/mlx5_core/eswitch.h head/sys/dev/mlx5/mlx5_core/mlx5_eswitch.c head/sys/dev/mlx5/mlx5_core/mlx5_main.c Modified: head/sys/dev/mlx5/mlx5_core/eswitch.h ============================================================================== --- head/sys/dev/mlx5/mlx5_core/eswitch.h Wed Mar 18 22:40:26 2020 (r359103) +++ head/sys/dev/mlx5/mlx5_core/eswitch.h Wed Mar 18 22:43:39 2020 (r359104) @@ -152,7 +152,7 @@ struct mlx5_esw_vport_info { }; /* E-Switch API */ -int mlx5_eswitch_init(struct mlx5_core_dev *dev); +int mlx5_eswitch_init(struct mlx5_core_dev *dev, int total_vports); void mlx5_eswitch_cleanup(struct mlx5_eswitch *esw); void mlx5_eswitch_vport_event(struct mlx5_eswitch *esw, struct mlx5_eqe *eqe); int mlx5_eswitch_enable_sriov(struct mlx5_eswitch *esw, int nvfs); Modified: head/sys/dev/mlx5/mlx5_core/mlx5_eswitch.c ============================================================================== --- head/sys/dev/mlx5/mlx5_core/mlx5_eswitch.c Wed Mar 18 22:40:26 2020 (r359103) +++ head/sys/dev/mlx5/mlx5_core/mlx5_eswitch.c Wed Mar 18 22:43:39 2020 (r359104) @@ -1081,10 +1081,9 @@ void mlx5_eswitch_disable_sriov(struct mlx5_eswitch *e esw_enable_vport(esw, 0, UC_ADDR_CHANGE); } -int mlx5_eswitch_init(struct mlx5_core_dev *dev) +int mlx5_eswitch_init(struct mlx5_core_dev *dev, int total_vports) { int l2_table_size = 1 << MLX5_CAP_GEN(dev, log_max_l2_table); - int total_vports = 1; struct mlx5_eswitch *esw; int vport_num; int err; Modified: head/sys/dev/mlx5/mlx5_core/mlx5_main.c ============================================================================== --- head/sys/dev/mlx5/mlx5_core/mlx5_main.c Wed Mar 18 22:40:26 2020 (r359103) +++ head/sys/dev/mlx5/mlx5_core/mlx5_main.c Wed Mar 18 22:43:39 2020 (r359104) @@ -1317,6 +1317,7 @@ static int init_one(struct pci_dev *pdev, device_t bsddev = pdev->dev.bsddev; #ifdef PCI_IOV nvlist_t *pf_schema, *vf_schema; + int num_vfs, sriov_pos; #endif int i,err; struct sysctl_oid *pme_sysctl_node; @@ -1603,7 +1604,14 @@ static int init_one(struct pci_dev *pdev, #ifdef PCI_IOV if (MLX5_CAP_GEN(dev, vport_group_manager)) { - err = mlx5_eswitch_init(dev); + if (pci_find_extcap(bsddev, PCIZ_SRIOV, &sriov_pos) == 0) { + num_vfs = pci_read_config(bsddev, sriov_pos + + PCIR_SRIOV_TOTAL_VFS, 2); + } else { + mlx5_core_err(dev, "cannot find SR-IOV PCIe cap\n"); + num_vfs = 0; + } + err = mlx5_eswitch_init(dev, 1 + num_vfs); if (err == 0) { pf_schema = pci_iov_schema_alloc_node(); vf_schema = pci_iov_schema_alloc_node(); @@ -1780,6 +1788,10 @@ mlx5_iov_init(device_t dev, uint16_t num_vfs, const nv core_dev = pci_get_drvdata(pdev); priv = &core_dev->priv; + if (priv->eswitch == NULL) + return (ENXIO); + if (priv->eswitch->total_vports < num_vfs + 1) + num_vfs = priv->eswitch->total_vports - 1; err = mlx5_eswitch_enable_sriov(priv->eswitch, num_vfs); return (-err); } @@ -1811,6 +1823,9 @@ mlx5_iov_add_vf(device_t dev, uint16_t vfnum, const nv pdev = device_get_softc(dev); core_dev = pci_get_drvdata(pdev); priv = &core_dev->priv; + + if (vfnum + 1 >= priv->eswitch->total_vports) + return (ENXIO); if (nvlist_exists_binary(vf_config, iov_mac_addr_name)) { mac = nvlist_get_binary(vf_config, iov_mac_addr_name, From owner-svn-src-head@freebsd.org Wed Mar 18 22:44:49 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id AF9F326FB46; Wed, 18 Mar 2020 22:44:49 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jQ8d3TkFz3Pl3; Wed, 18 Mar 2020 22:44:49 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 67F9411DA; Wed, 18 Mar 2020 22:44:49 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IMindH072165; Wed, 18 Mar 2020 22:44:49 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IMinm5072164; Wed, 18 Mar 2020 22:44:49 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003182244.02IMinm5072164@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 18 Mar 2020 22:44:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359105 - head/sys/dev/mlx5/mlx5_core X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/dev/mlx5/mlx5_core X-SVN-Commit-Revision: 359105 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 22:44:49 -0000 Author: kib Date: Wed Mar 18 22:44:48 2020 New Revision: 359105 URL: https://svnweb.freebsd.org/changeset/base/359105 Log: mlx5: Route NIC_VPORT_CHANGE events to eswitch code. Reviewed by: hselasky Sponsored by: Mellanox Technologies MFC after: 2 weeks Modified: head/sys/dev/mlx5/mlx5_core/mlx5_eq.c Modified: head/sys/dev/mlx5/mlx5_core/mlx5_eq.c ============================================================================== --- head/sys/dev/mlx5/mlx5_core/mlx5_eq.c Wed Mar 18 22:43:39 2020 (r359104) +++ head/sys/dev/mlx5/mlx5_core/mlx5_eq.c Wed Mar 18 22:44:48 2020 (r359105) @@ -31,6 +31,7 @@ #include #include #include "mlx5_core.h" +#include "eswitch.h" #include "opt_rss.h" @@ -65,7 +66,8 @@ enum { (1ull << MLX5_EVENT_TYPE_PORT_CHANGE) | \ (1ull << MLX5_EVENT_TYPE_SRQ_CATAS_ERROR) | \ (1ull << MLX5_EVENT_TYPE_SRQ_LAST_WQE) | \ - (1ull << MLX5_EVENT_TYPE_SRQ_RQ_LIMIT)) + (1ull << MLX5_EVENT_TYPE_SRQ_RQ_LIMIT) | \ + (1ull << MLX5_EVENT_TYPE_NIC_VPORT_CHANGE)) struct map_eq_in { u64 mask; @@ -353,6 +355,9 @@ static int mlx5_eq_int(struct mlx5_core_dev *dev, stru MLX5_DEV_EVENT_VPORT_CHANGE, (unsigned long)vport_num); } + if (dev->priv.eswitch != NULL) + mlx5_eswitch_vport_event(dev->priv.eswitch, + eqe); break; case MLX5_EVENT_TYPE_FPGA_ERROR: From owner-svn-src-head@freebsd.org Wed Mar 18 22:47:15 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7743626FBFD; Wed, 18 Mar 2020 22:47:15 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jQCR0z51z416B; Wed, 18 Mar 2020 22:47:15 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9D68E11DD; Wed, 18 Mar 2020 22:47:14 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02IMlEuT072354; Wed, 18 Mar 2020 22:47:14 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02IMlEP0072353; Wed, 18 Mar 2020 22:47:14 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003182247.02IMlEP0072353@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Wed, 18 Mar 2020 22:47:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359106 - head/sys/dev/mlx5/mlx5_core X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/dev/mlx5/mlx5_core X-SVN-Commit-Revision: 359106 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Mar 2020 22:47:15 -0000 Author: kib Date: Wed Mar 18 22:47:14 2020 New Revision: 359106 URL: https://svnweb.freebsd.org/changeset/base/359106 Log: mlx5_core: lower the severity of message noting that no SR-IOV cap is present. Reviewed by: hselasky Sponsored by: Mellanox Technologies MFC after: 2 weeks Modified: head/sys/dev/mlx5/mlx5_core/mlx5_main.c Modified: head/sys/dev/mlx5/mlx5_core/mlx5_main.c ============================================================================== --- head/sys/dev/mlx5/mlx5_core/mlx5_main.c Wed Mar 18 22:44:48 2020 (r359105) +++ head/sys/dev/mlx5/mlx5_core/mlx5_main.c Wed Mar 18 22:47:14 2020 (r359106) @@ -1608,7 +1608,7 @@ static int init_one(struct pci_dev *pdev, num_vfs = pci_read_config(bsddev, sriov_pos + PCIR_SRIOV_TOTAL_VFS, 2); } else { - mlx5_core_err(dev, "cannot find SR-IOV PCIe cap\n"); + mlx5_core_info(dev, "cannot find SR-IOV PCIe cap\n"); num_vfs = 0; } err = mlx5_eswitch_init(dev, 1 + num_vfs); From owner-svn-src-head@freebsd.org Thu Mar 19 00:19:53 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 6BB7B271A2F; Thu, 19 Mar 2020 00:19:53 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jSGJ75lqz49lh; Thu, 19 Mar 2020 00:19:52 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4A64C227E; Thu, 19 Mar 2020 00:19:52 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02J0JoAO026338; Thu, 19 Mar 2020 00:19:50 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02J0JoDA026337; Thu, 19 Mar 2020 00:19:50 GMT (envelope-from mav@FreeBSD.org) Message-Id: <202003190019.02J0JoDA026337@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 19 Mar 2020 00:19:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359110 - head/sys/dev/ciss X-SVN-Group: head X-SVN-Commit-Author: mav X-SVN-Commit-Paths: head/sys/dev/ciss X-SVN-Commit-Revision: 359110 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 00:19:53 -0000 Author: mav Date: Thu Mar 19 00:19:50 2020 New Revision: 359110 URL: https://svnweb.freebsd.org/changeset/base/359110 Log: Add missing STAILQ_INIT() in ciss_disable_adapter(). I think it should fix reported panic after "ADAPTER HEARTBEAT FAILED". MFC after: 2 weeks Sponsored by: iXsystems, Inc. Modified: head/sys/dev/ciss/ciss.c Modified: head/sys/dev/ciss/ciss.c ============================================================================== --- head/sys/dev/ciss/ciss.c Wed Mar 18 23:53:34 2020 (r359109) +++ head/sys/dev/ciss/ciss.c Thu Mar 19 00:19:50 2020 (r359110) @@ -3566,6 +3566,7 @@ ciss_disable_adapter(struct ciss_softc *sc) pci_disable_busmaster(sc->ciss_dev); sc->ciss_flags &= ~CISS_FLAG_RUNNING; + STAILQ_INIT(&qh); for (i = 1; i < sc->ciss_max_requests; i++) { cr = &sc->ciss_request[i]; if ((cr->cr_flags & CISS_REQ_BUSY) == 0) From owner-svn-src-head@freebsd.org Thu Mar 19 00:53:32 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 34F4727252F; Thu, 19 Mar 2020 00:53:32 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jT176pnWz4TYM; Thu, 19 Mar 2020 00:53:31 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D32322A05; Thu, 19 Mar 2020 00:53:31 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02J0rVMb050569; Thu, 19 Mar 2020 00:53:31 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02J0rV7j050568; Thu, 19 Mar 2020 00:53:31 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003190053.02J0rV7j050568@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Thu, 19 Mar 2020 00:53:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359111 - head/sys/conf X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/conf X-SVN-Commit-Revision: 359111 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 00:53:32 -0000 Author: kib Date: Thu Mar 19 00:53:31 2020 New Revision: 359111 URL: https://svnweb.freebsd.org/changeset/base/359111 Log: Add file for static compilation of mlx5. Sponsored by: Mellanox Technologies MFC after: 2 weeks Modified: head/sys/conf/files Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Thu Mar 19 00:19:50 2020 (r359110) +++ head/sys/conf/files Thu Mar 19 00:53:31 2020 (r359111) @@ -4725,6 +4725,8 @@ dev/mlx5/mlx5_core/mlx5_diagnostics.c optional mlx5 p compile-with "${OFED_C}" dev/mlx5/mlx5_core/mlx5_eq.c optional mlx5 pci \ compile-with "${OFED_C}" +dev/mlx5/mlx5_core/mlx5_eswitch.c optional mlx5 pci \ + compile-with "${OFED_C}" dev/mlx5/mlx5_core/mlx5_fs_cmd.c optional mlx5 pci \ compile-with "${OFED_C}" dev/mlx5/mlx5_core/mlx5_fs_tree.c optional mlx5 pci \ From owner-svn-src-head@freebsd.org Thu Mar 19 01:05:55 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id C258427284C; Thu, 19 Mar 2020 01:05:55 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jTHR4kxrz3Jj1; Thu, 19 Mar 2020 01:05:55 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9B9F42BD6; Thu, 19 Mar 2020 01:05:55 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02J15tRq056670; Thu, 19 Mar 2020 01:05:55 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02J15s3q056664; Thu, 19 Mar 2020 01:05:54 GMT (envelope-from mav@FreeBSD.org) Message-Id: <202003190105.02J15s3q056664@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 19 Mar 2020 01:05:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359112 - in head: cddl/contrib/opensolaris/cmd/ztest sys/cddl/contrib/opensolaris/uts/common/fs/zfs sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys X-SVN-Group: head X-SVN-Commit-Author: mav X-SVN-Commit-Paths: in head: cddl/contrib/opensolaris/cmd/ztest sys/cddl/contrib/opensolaris/uts/common/fs/zfs sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys X-SVN-Commit-Revision: 359112 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 01:05:55 -0000 Author: mav Date: Thu Mar 19 01:05:54 2020 New Revision: 359112 URL: https://svnweb.freebsd.org/changeset/base/359112 Log: MFOpenZFS: make zil max block size tunable We've observed that on some highly fragmented pools, most metaslab allocations are small (~2-8KB), but there are some large, 128K allocations. The large allocations are for ZIL blocks. If there is a lot of fragmentation, the large allocations can be hard to satisfy. The most common impact of this is that we need to check (and thus load) lots of metaslabs from the ZIL allocation code path, causing sync writes to wait for metaslabs to load, which can take a second or more. In the worst case, we may not be able to satisfy the allocation, in which case the ZIL will resort to txg_wait_synced() to ensure the change is on disk. To provide a workaround for this, this change adds a tunable that can reduce the size of ZIL blocks. External-issue: DLPX-61719 Reviewed-by: George Wilson Reviewed-by: Paul Dagnelie Reviewed-by: Brian Behlendorf Signed-off-by: Matthew Ahrens Closes #8865 openzfs/zfs@b8738257c2607c73c731ce8e0fd73282b266d6ef MFC after: 2 weeks Modified: head/cddl/contrib/opensolaris/cmd/ztest/ztest.c head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil.h head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil_impl.h head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_log.c head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c Modified: head/cddl/contrib/opensolaris/cmd/ztest/ztest.c ============================================================================== --- head/cddl/contrib/opensolaris/cmd/ztest/ztest.c Thu Mar 19 00:53:31 2020 (r359111) +++ head/cddl/contrib/opensolaris/cmd/ztest/ztest.c Thu Mar 19 01:05:54 2020 (r359112) @@ -1544,7 +1544,7 @@ ztest_log_write(ztest_ds_t *zd, dmu_tx_t *tx, lr_write if (zil_replaying(zd->zd_zilog, tx)) return; - if (lr->lr_length > ZIL_MAX_LOG_DATA) + if (lr->lr_length > zil_max_log_data(zd->zd_zilog)) write_state = WR_INDIRECT; itx = zil_itx_create(TX_WRITE, Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil.h ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil.h Thu Mar 19 00:53:31 2020 (r359111) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil.h Thu Mar 19 01:05:54 2020 (r359112) @@ -20,7 +20,7 @@ */ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright (c) 2012, 2017 by Delphix. All rights reserved. + * Copyright (c) 2012, 2018 by Delphix. All rights reserved. * Copyright (c) 2014 Integros [integros.com] */ @@ -451,6 +451,9 @@ extern int zil_bp_tree_add(zilog_t *zilog, const blkpt extern void zil_set_sync(zilog_t *zilog, uint64_t syncval); extern void zil_set_logbias(zilog_t *zilog, uint64_t slogval); + +extern uint64_t zil_max_copied_data(zilog_t *zilog); +extern uint64_t zil_max_log_data(zilog_t *zilog); extern int zil_replay_disable; Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil_impl.h ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil_impl.h Thu Mar 19 00:53:31 2020 (r359111) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil_impl.h Thu Mar 19 01:05:54 2020 (r359112) @@ -20,7 +20,7 @@ */ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright (c) 2012, 2017 by Delphix. All rights reserved. + * Copyright (c) 2012, 2018 by Delphix. All rights reserved. * Copyright (c) 2014 Integros [integros.com] */ @@ -208,34 +208,19 @@ struct zilog { uint_t zl_prev_rotor; /* rotor for zl_prev[] */ txg_node_t zl_dirty_link; /* protected by dp_dirty_zilogs list */ uint64_t zl_dirty_max_txg; /* highest txg used to dirty zilog */ + /* + * Max block size for this ZIL. Note that this can not be changed + * while the ZIL is in use because consumers (ZPL/zvol) need to take + * this into account when deciding between WR_COPIED and WR_NEED_COPY + * (see zil_max_copied_data()). + */ + uint64_t zl_max_block_size; }; typedef struct zil_bp_node { dva_t zn_dva; avl_node_t zn_node; } zil_bp_node_t; - -/* - * Maximum amount of write data that can be put into single log block. - */ -#define ZIL_MAX_LOG_DATA (SPA_OLD_MAXBLOCKSIZE - sizeof (zil_chain_t) - \ - sizeof (lr_write_t)) -#define ZIL_MAX_COPIED_DATA \ - ((SPA_OLD_MAXBLOCKSIZE - sizeof (zil_chain_t)) / 2 - sizeof (lr_write_t)) - -/* - * Maximum amount of log space we agree to waste to reduce number of - * WR_NEED_COPY chunks to reduce zl_get_data() overhead (~12%). - */ -#define ZIL_MAX_WASTE_SPACE (ZIL_MAX_LOG_DATA / 8) - -/* - * Maximum amount of write data for WR_COPIED. Fall back to WR_NEED_COPY - * as more space efficient if we can't fit at least two log records into - * maximum sized log block. - */ -#define ZIL_MAX_COPIED_DATA ((SPA_OLD_MAXBLOCKSIZE - \ - sizeof (zil_chain_t)) / 2 - sizeof (lr_write_t)) #ifdef __cplusplus } Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_log.c ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_log.c Thu Mar 19 00:53:31 2020 (r359111) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_log.c Thu Mar 19 01:05:54 2020 (r359112) @@ -20,7 +20,7 @@ */ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright (c) 2015 by Delphix. All rights reserved. + * Copyright (c) 2015, 2018 by Delphix. All rights reserved. * Copyright (c) 2014 Integros [integros.com] */ @@ -493,7 +493,14 @@ zfs_log_write(zilog_t *zilog, dmu_tx_t *tx, int txtype itx_wr_state_t wr_state = write_state; ssize_t len = resid; - if (wr_state == WR_COPIED && resid > ZIL_MAX_COPIED_DATA) + /* + * A WR_COPIED record must fit entirely in one log block. + * Large writes can use WR_NEED_COPY, which the ZIL will + * split into multiple records across several log blocks + * if necessary. + */ + if (wr_state == WR_COPIED && + resid > zil_max_copied_data(zilog)) wr_state = WR_NEED_COPY; else if (wr_state == WR_INDIRECT) len = MIN(blocksize - P2PHASE(off, blocksize), resid); Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c Thu Mar 19 00:53:31 2020 (r359111) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c Thu Mar 19 01:05:54 2020 (r359112) @@ -1365,6 +1365,15 @@ struct { }; /* + * Maximum block size used by the ZIL. This is picked up when the ZIL is + * initialized. Otherwise this should not be used directly; see + * zl_max_block_size instead. + */ +int zil_maxblocksize = SPA_OLD_MAXBLOCKSIZE; +SYSCTL_INT(_vfs_zfs, OID_AUTO, zil_maxblocksize, CTLFLAG_RWTUN, + &zil_maxblocksize, 0, "Limit in bytes of ZIL log block size"); + +/* * Start a log block write and advance to the next log block. * Calls are serialized. */ @@ -1440,7 +1449,7 @@ zil_lwb_write_issue(zilog_t *zilog, lwb_t *lwb) zil_blksz = zilog->zl_cur_used + sizeof (zil_chain_t); for (i = 0; zil_blksz > zil_block_buckets[i].limit; i++) continue; - zil_blksz = zil_block_buckets[i].blksz; + zil_blksz = MIN(zil_block_buckets[i].blksz, zilog->zl_max_block_size); zilog->zl_prev_blks[zilog->zl_prev_rotor] = zil_blksz; for (i = 0; i < ZIL_PREV_BLKS; i++) zil_blksz = MAX(zil_blksz, zilog->zl_prev_blks[i]); @@ -1497,13 +1506,47 @@ zil_lwb_write_issue(zilog_t *zilog, lwb_t *lwb) return (nlwb); } +/* + * Maximum amount of write data that can be put into single log block. + */ +uint64_t +zil_max_log_data(zilog_t *zilog) +{ + return (zilog->zl_max_block_size - + sizeof (zil_chain_t) - sizeof (lr_write_t)); +} + +/* + * Maximum amount of log space we agree to waste to reduce number of + * WR_NEED_COPY chunks to reduce zl_get_data() overhead (~12%). + */ +static inline uint64_t +zil_max_waste_space(zilog_t *zilog) +{ + return (zil_max_log_data(zilog) / 8); +} + +/* + * Maximum amount of write data for WR_COPIED. For correctness, consumers + * must fall back to WR_NEED_COPY if we can't fit the entire record into one + * maximum sized log block, because each WR_COPIED record must fit in a + * single log block. For space efficiency, we want to fit two records into a + * max-sized log block. + */ +uint64_t +zil_max_copied_data(zilog_t *zilog) +{ + return ((zilog->zl_max_block_size - sizeof (zil_chain_t)) / 2 - + sizeof (lr_write_t)); +} + static lwb_t * zil_lwb_commit(zilog_t *zilog, itx_t *itx, lwb_t *lwb) { lr_t *lrcb, *lrc; lr_write_t *lrwb, *lrw; char *lr_buf; - uint64_t dlen, dnow, lwb_sp, reclen, txg; + uint64_t dlen, dnow, lwb_sp, reclen, txg, max_log_data; ASSERT(MUTEX_HELD(&zilog->zl_issuer_lock)); ASSERT3P(lwb, !=, NULL); @@ -1552,15 +1595,27 @@ cont: * For WR_NEED_COPY optimize layout for minimal number of chunks. */ lwb_sp = lwb->lwb_sz - lwb->lwb_nused; + max_log_data = zil_max_log_data(zilog); if (reclen > lwb_sp || (reclen + dlen > lwb_sp && - lwb_sp < ZIL_MAX_WASTE_SPACE && (dlen % ZIL_MAX_LOG_DATA == 0 || - lwb_sp < reclen + dlen % ZIL_MAX_LOG_DATA))) { + lwb_sp < zil_max_waste_space(zilog) && + (dlen % max_log_data == 0 || + lwb_sp < reclen + dlen % max_log_data))) { lwb = zil_lwb_write_issue(zilog, lwb); if (lwb == NULL) return (NULL); zil_lwb_write_open(zilog, lwb); ASSERT(LWB_EMPTY(lwb)); lwb_sp = lwb->lwb_sz - lwb->lwb_nused; + + /* + * There must be enough space in the new, empty log block to + * hold reclen. For WR_COPIED, we need to fit the whole + * record in one block, and reclen is the header size + the + * data size. For WR_NEED_COPY, we can create multiple + * records, splitting the data into multiple blocks, so we + * only need to fit one word of data per block; in this case + * reclen is just the header size (no data). + */ ASSERT3U(reclen + MIN(dlen, sizeof (uint64_t)), <=, lwb_sp); } @@ -2992,6 +3047,7 @@ zil_alloc(objset_t *os, zil_header_t *zh_phys) zilog->zl_dirty_max_txg = 0; zilog->zl_last_lwb_opened = NULL; zilog->zl_last_lwb_latency = 0; + zilog->zl_max_block_size = zil_maxblocksize; mutex_init(&zilog->zl_lock, NULL, MUTEX_DEFAULT, NULL); mutex_init(&zilog->zl_issuer_lock, NULL, MUTEX_DEFAULT, NULL); Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c Thu Mar 19 00:53:31 2020 (r359111) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c Thu Mar 19 01:05:54 2020 (r359112) @@ -1438,7 +1438,7 @@ zvol_log_write(zvol_state_t *zv, dmu_tx_t *tx, offset_ itx_wr_state_t wr_state = write_state; ssize_t len = resid; - if (wr_state == WR_COPIED && resid > ZIL_MAX_COPIED_DATA) + if (wr_state == WR_COPIED && resid > zil_max_copied_data(zilog)) wr_state = WR_NEED_COPY; else if (wr_state == WR_INDIRECT) len = MIN(blocksize - P2PHASE(off, blocksize), resid); From owner-svn-src-head@freebsd.org Thu Mar 19 06:33:07 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 71F9227CA6F; Thu, 19 Mar 2020 06:33:07 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jcXy6y6tz3QZb; Thu, 19 Mar 2020 06:33:06 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D1F336D03; Thu, 19 Mar 2020 06:33:06 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02J6X6Gn055666; Thu, 19 Mar 2020 06:33:06 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02J6X6lC055665; Thu, 19 Mar 2020 06:33:06 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <202003190633.02J6X6lC055665@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Thu, 19 Mar 2020 06:33:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359118 - head/lib/libc/nls X-SVN-Group: head X-SVN-Commit-Author: delphij X-SVN-Commit-Paths: head/lib/libc/nls X-SVN-Commit-Revision: 359118 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 06:33:07 -0000 Author: delphij Date: Thu Mar 19 06:33:06 2020 New Revision: 359118 URL: https://svnweb.freebsd.org/changeset/base/359118 Log: Fix race condition in catopen(3). The current code uses a rwlock to protect the cached list, which in turn holds a list of catentry objects, and increments reference count while holding only read lock. Fix this by converting the reference counter to use atomic operations. While I'm there, also perform some clean ups around memory operations. PR: 202636 Reported by: Henry Hu Reviewed by: markj MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D24095 Modified: head/lib/libc/nls/msgcat.c Modified: head/lib/libc/nls/msgcat.c ============================================================================== --- head/lib/libc/nls/msgcat.c Thu Mar 19 03:37:02 2020 (r359117) +++ head/lib/libc/nls/msgcat.c Thu Mar 19 06:33:06 2020 (r359118) @@ -43,6 +43,7 @@ __FBSDID("$FreeBSD$"); #include #include /* for ntohl() */ +#include #include #include @@ -76,19 +77,25 @@ __FBSDID("$FreeBSD$"); #define NLERR ((nl_catd) -1) #define NLRETERR(errc) { errno = errc; return (NLERR); } -#define SAVEFAIL(n, l, e) { WLOCK(NLERR); \ - np = malloc(sizeof(struct catentry)); \ +#define SAVEFAIL(n, l, e) { np = calloc(1, sizeof(struct catentry)); \ if (np != NULL) { \ np->name = strdup(n); \ - np->path = NULL; \ np->catd = NLERR; \ - np->refcount = 0; \ np->lang = (l == NULL) ? NULL : \ strdup(l); \ np->caterrno = e; \ - SLIST_INSERT_HEAD(&cache, np, list); \ + if (np->name == NULL || \ + (l != NULL && np->lang == NULL)) { \ + free(np->name); \ + free(np->lang); \ + free(np); \ + } else { \ + WLOCK(NLERR); \ + SLIST_INSERT_HEAD(&cache, np, \ + list); \ + UNLOCK; \ + } \ } \ - UNLOCK; \ errno = e; \ } @@ -152,7 +159,7 @@ catopen(const char *name, int type) NLRETERR(np->caterrno); } else { /* Found cached successful entry */ - np->refcount++; + atomic_add_int(&np->refcount, 1); UNLOCK; return (np->catd); } @@ -355,8 +362,7 @@ catclose(nl_catd catd) WLOCK(-1); SLIST_FOREACH(np, &cache, list) { if (catd == np->catd) { - np->refcount--; - if (np->refcount == 0) + if (atomic_fetchadd_int(&np->refcount, -1) == 1) catfree(np); break; } @@ -376,6 +382,7 @@ load_msgcat(const char *path, const char *name, const nl_catd catd; struct catentry *np; void *data; + char *copy_path, *copy_name, *copy_lang; int fd; /* path/name will never be NULL here */ @@ -387,7 +394,7 @@ load_msgcat(const char *path, const char *name, const RLOCK(NLERR); SLIST_FOREACH(np, &cache, list) { if ((np->path != NULL) && (strcmp(np->path, path) == 0)) { - np->refcount++; + atomic_add_int(&np->refcount, 1); UNLOCK; return (np->catd); } @@ -432,7 +439,20 @@ load_msgcat(const char *path, const char *name, const NLRETERR(EFTYPE); } - if ((catd = malloc(sizeof (*catd))) == NULL) { + copy_name = strdup(name); + copy_path = strdup(path); + copy_lang = (lang == NULL) ? NULL : strdup(lang); + catd = malloc(sizeof (*catd)); + np = calloc(1, sizeof(struct catentry)); + + if (copy_name == NULL || copy_path == NULL || + (lang != NULL && copy_lang == NULL) || + catd == NULL || np == NULL) { + free(copy_name); + free(copy_path); + free(copy_lang); + free(catd); + free(np); munmap(data, (size_t)st.st_size); SAVEFAIL(name, lang, ENOMEM); NLRETERR(ENOMEM); @@ -442,16 +462,13 @@ load_msgcat(const char *path, const char *name, const catd->__size = (int)st.st_size; /* Caching opened catalog */ + np->name = copy_name; + np->path = copy_path; + np->catd = catd; + np->lang = copy_lang; + atomic_store_int(&np->refcount, 1); WLOCK(NLERR); - if ((np = malloc(sizeof(struct catentry))) != NULL) { - np->name = strdup(name); - np->path = strdup(path); - np->catd = catd; - np->lang = (lang == NULL) ? NULL : strdup(lang); - np->refcount = 1; - np->caterrno = 0; - SLIST_INSERT_HEAD(&cache, np, list); - } + SLIST_INSERT_HEAD(&cache, np, list); UNLOCK; return (catd); } From owner-svn-src-head@freebsd.org Thu Mar 19 09:16:01 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 2C70825963C; Thu, 19 Mar 2020 09:16:01 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jh8w5q4rz4VTk; Thu, 19 Mar 2020 09:16:00 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id EABAD8A6A; Thu, 19 Mar 2020 09:15:59 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02J9FxLQ053192; Thu, 19 Mar 2020 09:15:59 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02J9FxpN053189; Thu, 19 Mar 2020 09:15:59 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <202003190915.02J9FxpN053189@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Thu, 19 Mar 2020 09:15:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359120 - head/sys/dev/usb X-SVN-Group: head X-SVN-Commit-Author: hselasky X-SVN-Commit-Paths: head/sys/dev/usb X-SVN-Commit-Revision: 359120 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 09:16:01 -0000 Author: hselasky Date: Thu Mar 19 09:15:59 2020 New Revision: 359120 URL: https://svnweb.freebsd.org/changeset/base/359120 Log: Correctly implement support for remote wakeup for USB 3.0 device. Submitted by: Horse Ma MFC after: 1 week Sponsored by: Mellanox Technologies Modified: head/sys/dev/usb/usb.h head/sys/dev/usb/usb_hub.c Modified: head/sys/dev/usb/usb.h ============================================================================== --- head/sys/dev/usb/usb.h Thu Mar 19 08:13:51 2020 (r359119) +++ head/sys/dev/usb/usb.h Thu Mar 19 09:15:59 2020 (r359120) @@ -274,6 +274,11 @@ typedef struct usb_device_request usb_device_request_t #define UHF_C_BH_PORT_RESET 29 #define UHF_FORCE_LINKPM_ACCEPT 30 +/* SuperSpeed suspend support */ +#define USB_INTERFACE_FUNC_SUSPEND 0 +#define USB_INTERFACE_FUNC_SUSPEND_LP (1 << 8) +#define USB_INTERFACE_FUNC_SUSPEND_RW (1 << 9) + struct usb_descriptor { uByte bLength; uByte bDescriptorType; Modified: head/sys/dev/usb/usb_hub.c ============================================================================== --- head/sys/dev/usb/usb_hub.c Thu Mar 19 08:13:51 2020 (r359119) +++ head/sys/dev/usb/usb_hub.c Thu Mar 19 09:15:59 2020 (r359120) @@ -2571,6 +2571,50 @@ usb_bus_powerd(struct usb_bus *bus) } #endif +static usb_error_t +usbd_device_30_remote_wakeup(struct usb_device *udev, uint8_t bRequest) +{ + struct usb_device_request req = {}; + + req.bmRequestType = UT_WRITE_INTERFACE; + req.bRequest = bRequest; + USETW(req.wValue, USB_INTERFACE_FUNC_SUSPEND); + USETW(req.wIndex, USB_INTERFACE_FUNC_SUSPEND_LP | + USB_INTERFACE_FUNC_SUSPEND_RW); + + return (usbd_do_request(udev, NULL, &req, 0)); +} + +static usb_error_t +usbd_clear_dev_wakeup(struct usb_device *udev) +{ + usb_error_t err; + + if (usb_device_20_compatible(udev)) { + err = usbd_req_clear_device_feature(udev, + NULL, UF_DEVICE_REMOTE_WAKEUP); + } else { + err = usbd_device_30_remote_wakeup(udev, + UR_CLEAR_FEATURE); + } + return (err); +} + +static usb_error_t +usbd_set_dev_wakeup(struct usb_device *udev) +{ + usb_error_t err; + + if (usb_device_20_compatible(udev)) { + err = usbd_req_set_device_feature(udev, + NULL, UF_DEVICE_REMOTE_WAKEUP); + } else { + err = usbd_device_30_remote_wakeup(udev, + UR_SET_FEATURE); + } + return (err); +} + /*------------------------------------------------------------------------* * usb_dev_resume_peer * @@ -2674,8 +2718,7 @@ usb_dev_resume_peer(struct usb_device *udev) /* check if peer has wakeup capability */ if (usb_peer_can_wakeup(udev)) { /* clear remote wakeup */ - err = usbd_req_clear_device_feature(udev, - NULL, UF_DEVICE_REMOTE_WAKEUP); + err = usbd_clear_dev_wakeup(udev); if (err) { DPRINTFN(0, "Clearing device " "remote wakeup failed: %s\n", @@ -2740,8 +2783,7 @@ repeat: */ /* allow device to do remote wakeup */ - err = usbd_req_set_device_feature(udev, - NULL, UF_DEVICE_REMOTE_WAKEUP); + err = usbd_set_dev_wakeup(udev); if (err) { DPRINTFN(0, "Setting device " "remote wakeup failed\n"); @@ -2767,8 +2809,7 @@ repeat: if (err != 0) { if (usb_peer_can_wakeup(udev)) { /* allow device to do remote wakeup */ - err = usbd_req_clear_device_feature(udev, - NULL, UF_DEVICE_REMOTE_WAKEUP); + err = usbd_clear_dev_wakeup(udev); if (err) { DPRINTFN(0, "Setting device " "remote wakeup failed\n"); From owner-svn-src-head@freebsd.org Thu Mar 19 09:23:27 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id D7109259B66; Thu, 19 Mar 2020 09:23:27 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jhKW3X7jz3MBT; Thu, 19 Mar 2020 09:23:27 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5959B8C34; Thu, 19 Mar 2020 09:23:27 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02J9NRYr059161; Thu, 19 Mar 2020 09:23:27 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02J9NRtU059160; Thu, 19 Mar 2020 09:23:27 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202003190923.02J9NRtU059160@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Thu, 19 Mar 2020 09:23:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359125 - head/lib/geom/eli X-SVN-Group: head X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: head/lib/geom/eli X-SVN-Commit-Revision: 359125 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 09:23:27 -0000 Author: 0mp (doc,ports committer) Date: Thu Mar 19 09:23:26 2020 New Revision: 359125 URL: https://svnweb.freebsd.org/changeset/base/359125 Log: Document geli(8) loader variables conventions The geli(8) manual page has an example for preloading keyfiles during boot. There is no detail though on how the lookup of these variables actually works. Let's document that the name of a device does not have to be a part of the variable. PR: 243261 Submitted by: johannes@jo-t.de Approved by: bcr (mentor) MFC after: 3 weeks Differential Revision: https://reviews.freebsd.org/D24114 Modified: head/lib/geom/eli/geli.8 Modified: head/lib/geom/eli/geli.8 ============================================================================== --- head/lib/geom/eli/geli.8 Thu Mar 19 09:21:27 2020 (r359124) +++ head/lib/geom/eli/geli.8 Thu Mar 19 09:23:26 2020 (r359125) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd May 23, 2019 +.Dd March 19, 2020 .Dt GELI 8 .Os .Sh NAME @@ -1012,6 +1012,35 @@ geli_da1s3a_keyfile_load="YES" geli_da1s3a_keyfile_type="da1s3a:geli_keyfile" geli_da1s3a_keyfile_name="/boot/keys/da1s3a.key" .Ed +.Pp +By convention, these loader variables are called +.Sm off +.Va geli_ No < Ar device No > Va _load . +.Sm on +However, the actual name prefix before +.Va _load , _type , +or +.Va _name +does not matter. +At boot time, the +.Nm +module searches through all +.Sm off +.No < Va prefix No > Va _type No -like +.Sm on +variables that have a value of +.Sm off +.Dq < Ar device No > :geli_keyfile . +.Sm on +The paths to keyfiles are then extracted from +.Sm off +.No < Ar prefix No > Va _name +.Sm on +variables. +In the example above, +.Ar prefix +is +.Dq Li geli_da1s3a_keyfile . .Pp Not only configure encryption, but also data integrity verification using .Nm HMAC/SHA256 . From owner-svn-src-head@freebsd.org Thu Mar 19 10:20:33 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id D5B2525AF65; Thu, 19 Mar 2020 10:20:33 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jjbP2xKVz3Qst; Thu, 19 Mar 2020 10:20:33 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1CEFA956C; Thu, 19 Mar 2020 10:20:33 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02JAKWFd091977; Thu, 19 Mar 2020 10:20:32 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02JAKW4F091959; Thu, 19 Mar 2020 10:20:32 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202003191020.02JAKW4F091959@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Thu, 19 Mar 2020 10:20:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359126 - head/share/misc X-SVN-Group: head X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: head/share/misc X-SVN-Commit-Revision: 359126 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 10:20:33 -0000 Author: 0mp (doc,ports committer) Date: Thu Mar 19 10:20:32 2020 New Revision: 359126 URL: https://svnweb.freebsd.org/changeset/base/359126 Log: Document my doc bit and that bcr@ was my mentor Modified: head/share/misc/committers-doc.dot Modified: head/share/misc/committers-doc.dot ============================================================================== --- head/share/misc/committers-doc.dot Thu Mar 19 09:23:26 2020 (r359125) +++ head/share/misc/committers-doc.dot Thu Mar 19 10:20:32 2020 (r359126) @@ -50,6 +50,7 @@ node [color=lightblue2, style=filled, bgcolor=black]; # Current doc committers go here. Try to keep things sorted. +"0mp" [label="Mateusz Piotrowski\n0mp@FreeBSD.org\n2019/09/29"] ale [label="Alex Dupre\nale@FreeBSD.org\n2003/12/22"] allanjude [label="Allan Jude\nallanjude@FreeBSD.org\n2014/05/17"] bcr [label="Benedict Reuschling\nbcr@FreeBSD.org\n2009/12/24"] @@ -113,6 +114,7 @@ bcr -> sevan bcr -> dexter bcr -> sg bcr -> carlavilla +bcr -> "0mp" blackend -> ale From owner-svn-src-head@freebsd.org Thu Mar 19 12:22:21 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 8A9A125EF79; Thu, 19 Mar 2020 12:22:21 +0000 (UTC) (envelope-from dab@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jmHw6xrpz4GHF; Thu, 19 Mar 2020 12:22:20 +0000 (UTC) (envelope-from dab@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id AB561AD1C; Thu, 19 Mar 2020 12:22:20 +0000 (UTC) (envelope-from dab@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02JCMKSt068096; Thu, 19 Mar 2020 12:22:20 GMT (envelope-from dab@FreeBSD.org) Received: (from dab@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02JCMKWh068095; Thu, 19 Mar 2020 12:22:20 GMT (envelope-from dab@FreeBSD.org) Message-Id: <202003191222.02JCMKWh068095@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dab set sender to dab@FreeBSD.org using -f From: David Bright Date: Thu, 19 Mar 2020 12:22:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359129 - head/sys/cam/nvme X-SVN-Group: head X-SVN-Commit-Author: dab X-SVN-Commit-Paths: head/sys/cam/nvme X-SVN-Commit-Revision: 359129 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 12:22:21 -0000 Author: dab Date: Thu Mar 19 12:22:20 2020 New Revision: 359129 URL: https://svnweb.freebsd.org/changeset/base/359129 Log: Fix parameter reversal potentially causing buffer overrun. Two arguments were reversed in calls to cam_strvis() in nvme_da.c. This was found by a Coverity scan of this code within Dell (Isilon). These are also marked in the FreeBSD Coverity scan as CIDs 1400526 & 1400531. Submitted by: robert.herndon@dell.com Reviewed by: vangyzen@, imp@ MFC after: 3 days Sponsored by: Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D24117 Modified: head/sys/cam/nvme/nvme_da.c Modified: head/sys/cam/nvme/nvme_da.c ============================================================================== --- head/sys/cam/nvme/nvme_da.c Thu Mar 19 10:32:38 2020 (r359128) +++ head/sys/cam/nvme/nvme_da.c Thu Mar 19 12:22:20 2020 (r359129) @@ -815,9 +815,9 @@ ndaregister(struct cam_periph *periph, void *arg) * the serial or model number strings. */ cam_strvis(disk->d_descr, cd->mn, - sizeof(disk->d_descr), NVME_MODEL_NUMBER_LENGTH); + NVME_MODEL_NUMBER_LENGTH, sizeof(disk->d_descr)); cam_strvis(disk->d_ident, cd->sn, - sizeof(disk->d_ident), NVME_SERIAL_NUMBER_LENGTH); + NVME_SERIAL_NUMBER_LENGTH, sizeof(disk->d_ident)); disk->d_hba_vendor = cpi.hba_vendor; disk->d_hba_device = cpi.hba_device; disk->d_hba_subvendor = cpi.hba_subvendor; From owner-svn-src-head@freebsd.org Thu Mar 19 12:33:44 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 1DF2F25F546 for ; Thu, 19 Mar 2020 12:33:44 +0000 (UTC) (envelope-from junchoon@dec.sakura.ne.jp) Received: from dec.sakura.ne.jp (dec.sakura.ne.jp [210.188.226.8]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48jmY06xskz4fjB for ; Thu, 19 Mar 2020 12:33:40 +0000 (UTC) (envelope-from junchoon@dec.sakura.ne.jp) Received: from kalamity.joker.local (124-18-96-116.dz.commufa.jp [124.18.96.116]) (authenticated bits=0) by dec.sakura.ne.jp (8.15.2/8.15.2/[SAKURA-WEB]/20080708) with ESMTPA id 02JCXUpB006258; Thu, 19 Mar 2020 21:33:30 +0900 (JST) (envelope-from junchoon@dec.sakura.ne.jp) Date: Thu, 19 Mar 2020 21:33:29 +0900 From: Tomoaki AOKI To: Toomas Soome Cc: Ruslan Garipov , svn-src-head@freebsd.org Subject: Re: svn commit: r358989 - in head/stand/efi: libefi loader loader/arch/arm loader/arch/arm64 Message-Id: <20200319213329.f354314a9a72e1419d76d2ba@dec.sakura.ne.jp> In-Reply-To: <4ABF87AE-948F-43A8-940A-744FC2F4DE4D@me.com> References: <20200316001745.07df62f72d647b924b657d86@dec.sakura.ne.jp> <746EE981-536F-49AD-9B76-F9F103ECB1F9@me.com> <20200317211614.bbe1b18a32d7863941fffbe8@dec.sakura.ne.jp> <55b1f91b-6157-bfee-cd74-124ed50bc663@gmail.com> <944c641f-b570-1420-6b63-96374217d795@gmail.com> <4ABF87AE-948F-43A8-940A-744FC2F4DE4D@me.com> Reply-To: junchoon@dec.sakura.ne.jp Organization: Junchoon corps X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.32; amd64-portbld-freebsd12.1) Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 48jmY06xskz4fjB X-Spamd-Bar: +++++ Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=none (mx1.freebsd.org: domain of junchoon@dec.sakura.ne.jp has no SPF policy when checking 210.188.226.8) smtp.mailfrom=junchoon@dec.sakura.ne.jp X-Spamd-Result: default: False [5.18 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; HAS_REPLYTO(0.00)[junchoon@dec.sakura.ne.jp]; TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; REPLYTO_ADDR_EQ_FROM(0.00)[]; HAS_ORG_HEADER(0.00)[]; FREEMAIL_TO(0.00)[me.com]; RECEIVED_SPAMHAUS_PBL(0.00)[116.96.18.124.khpj7ygk5idzvmvt5x4ziurxhy.zen.dq.spamhaus.net : 127.0.0.10]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; ASN(0.00)[asn:9370, ipnet:210.188.224.0/19, country:JP]; MIME_TRACE(0.00)[0:+]; MID_RHS_MATCH_FROM(0.00)[]; ARC_NA(0.00)[]; IP_SCORE(1.78)[ipnet: 210.188.224.0/19(4.95), asn: 9370(3.93), country: JP(0.04)]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; MIME_GOOD(-0.10)[text/plain]; RCVD_TLS_LAST(0.00)[]; DMARC_NA(0.00)[sakura.ne.jp]; AUTH_NA(1.00)[]; NEURAL_SPAM_MEDIUM(1.00)[0.999,0]; TO_MATCH_ENVRCPT_SOME(0.00)[]; NEURAL_SPAM_LONG(1.00)[1.000,0]; R_SPF_NA(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; FREEMAIL_CC(0.00)[gmail.com] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 12:33:44 -0000 On Thu, 19 Mar 2020 00:28:59 +0200 Toomas Soome wrote: > > > > On 18. Mar 2020, at 20:41, Ruslan Garipov wrote: > > > > On 3/18/2020 10:29 PM, Toomas Soome via svn-src-head wrote: > >> > >> > >>> On 18. Mar 2020, at 18:40, Ruslan Garipov wrote: > >>> > >>> On 3/17/2020 5:16 PM, Tomoaki AOKI wrote: > >>>> Hi! Thanks for your respond. > >>>> > >>>> Unfortunately, no. > >>>> I'm running on ThinkPad P52, which has no com connector installed. > >>>> No USB serial interface connected. > >>>> > >>>> `efi-show -g global -v ConOut` on loader prompt shows > >>>> > >>>> global NV,BS,RS ConOut = > >>>> PciRoot(0,0)/Pci((0x1,oxo)/Pci(0x0,0x0)/AcpiAdr(0x80010100) > >>>> > >>>> Moreover, my previous idea didn't help. > >>>> > >>>> Neither > >>>> console="vidconsole" > >>>> console="eficonsole" > >>>> console="efi_console" > >>>> nor > >>>> console="efi" > >>>> in /boot/loader.conf works. > >>>> > >>>> Defining / undefining TERM_EMU on build are untested. > >>>> > >>>> Is there any setting for /boot/loader.conf to control the behavior? > >>>> > >>>> > >>>> Regards. > >>>> > >>>> > >>>> On Mon, 16 Mar 2020 08:26:56 +0200 > >>>> Toomas Soome wrote: > >>>> > >>>>> Hi! > >>>>> > >>>>> This means, your system has UART serial device $B".(B you can check this from loader prompt: efi-show -g global -v ConOut or with efivar from running system. This would trigger efi console driver to use TERM_EMU, which can be turned off by user and doing that would cause ESC sequences to be passed directly to console. Might that be true in your case? > >>>>> > >>>>> rgds, > >>>>> toomas > >>>>> > >>>>>> On 15. Mar 2020, at 17:17, Tomoaki AOKI wrote: > >>>>>> > >>>>>> Hi. > >>>>>> > >>>>>> This broke loader menu display on efifb. At least on amd64. > >>>>>> ESC sequences without ESC character are shown. > >>>>>> Key input (at least 1, 2 and enter) works OK. > >>>>>> I suspect outputs for SIO is sent to efifb and ESC codes are ignored. > >>>>>> > >>>>>> Reverting this fixes the issue. > >>> I got the same issue with loader menu when was upgrading from r358827 to > >>> r359028 (x86-64). > >>> > >>> But unfortunately the broken menu is just a part of my problem. The > >>> real pain is that a FreeBSD 13.0-CURRENT system hosted by VMware ESXi or > >>> Workstation doesn't boot anymore after r358989. An ugly workaround[1] > >>> (exiting from the loader menu into the loader prompt, running ls or > >>> show, scrolling the result down and then executing boot) I found some > >>> time ago doesn't work anymore. After running boot/boot -s/selecting > >>> menu item, a hypervisor just shuts session down with the following > >>> message: ``The firmware encountered an unexpected exception. The virtual > >>> machine cannot boot.'' > >>> > >>> The virtual guests don't have any UART (even USB) serial devices in > >>> their settings. efi-show prints result similar to what Tomoaki got: > >>> > >>> OK efi-show -g global -v CounOut > >>> global NV,BS,RS ConOut = PciRoot(0x0)/Pci(0x2,0x0)/AcpiAdr(0x80014310) > >>> > >>> Undefining TERM_EMU doesn't help. I had completely removed CFLAGS > >>> assignment with TERM_EMU from stand/efi/libefi/Makefile and rebuilt > >>> kernel/world -- nothing changed. I don't define TERM_EMU in my > >>> make.conf or/and src.conf. > >>> > >>> Reverting this revision fix booting (and menu, of course). > >>> > >>> FreeBSD on physical hardware boots just fine with this revision, but has > >>> corrupted loader menu. > >>> > >>> Toomas, please help us to fix this. I can live with the broken menu, > >>> but I don't want to revert this revision every time I will upgrade my > >>> virtual machines after r359028 now. > >> > >> > >> Hi! > >> > >> The build, are you doing build with -DNO_CLEAN? or can you run make clean in stand and then build it again? Otherwise, if you can poke me on irc, I$B!G(Bd like to get to the bottom of this. > > Hello! > > > > I'm sorry, currently I have no access to either IRC, nor my build > > machine. Therefore, I can't show you the build log. NO_CLEAN -- no, I > > don't use it. What I've actually done regarding to testing TERM_EMU: I > > removed `CFLAGS+= -DTERM_EMU` (and the .if condition wrapping this line) > > from the Makefile, removed /usr/obj directory, and buildworld and > > buildkernel then. And then install rebuilt kernel/userland on a target > > machine. Nothing changed, but it should? > > > Please try r359099. Many thanks! Worked fine for me, at least buildworld after `make clean` on /usr/src/stand. A bit details: Cleaning /usr/src/stand before building itself didn't help. Updating to r359099 and later was mandatory. No VMs are tested, as I'm currently not running any VMs. For your further investigation, kenv output is like this: === `kenv` output except hardware serial No. and UUID below === acpi.oem="LENOVO" acpi.revision="2" acpi.rsdp="0x000000004fd0e014" acpi.rsdt="0x000000004fd0c0c4" acpi.xsdt="0x000000004fd0c188" acpi.xsdt_length="36" bootenv_autolist="YES" bootenvs[0]="zfs:zsysS05/ROOT/head-r359007-boot1Rev6TA3" bootenvs[10]="zfs:zsysS05/ROOT/head-r358565-boot1Rev6TA3" bootenvs[11]="zfs:zsysS05/ROOT/" bootenvs[1]="zfs:zsysS05/ROOT/head-r359005-boot1Rev6TA3" bootenvs[2]="zfs:zsysS05/ROOT/head-r358989-boot1Rev6TA3" bootenvs[3]="zfs:zsysS05/ROOT/head-r358906-boot1Rev6TA3" bootenvs[4]="zfs:zsysS05/ROOT/head-r358872-boot1Rev6TA3" bootenvs[5]="zfs:zsysS05/ROOT/head-r358865-boot1Rev6TA3-2" bootenvs[6]="zfs:zsysS05/ROOT/head-r358827-boot1Rev6TA3" bootenvs[7]="zfs:zsysS05/ROOT/head-r358734-boot1Rev6TA3" bootenvs[8]="zfs:zsysS05/ROOT/head-r358729-boot1Rev6TA3" bootenvs[9]="zfs:zsysS05/ROOT/head-r358669-boot1Rev6TA3" bootenvs_count="12" bootfile="kernel" comconsole_pcidev="" comconsole_port="1016" comconsole_speed="9600" console="efi" currdev="zfs:zsysS05/ROOT/default:" efi-version="2.60" efi_max_resolution="2160p" hint.acpi.0.oem="LENOVO" hint.acpi.0.revision="2" hint.acpi.0.rsdp="0x000000004fd0e014" hint.acpi.0.rsdt="0x000000004fd0c0c4" hint.acpi.0.xsdt="0x000000004fd0c188" hint.acpi.0.xsdt_length="36" hint.acpi_throttle.0.disabled="1" hint.atkbd.0.at="atkbdc" hint.atkbd.0.irq="1" hint.atkbdc.0.at="isa" hint.atkbdc.0.port="0x060" hint.atrtc.0.at="isa" hint.atrtc.0.irq="8" hint.atrtc.0.port="0x70" hint.attimer.0.at="isa" hint.attimer.0.irq="0" hint.attimer.0.port="0x40" hint.fd.0.at="fdc0" hint.fd.0.drive="0" hint.fd.1.at="fdc0" hint.fd.1.drive="1" hint.fdc.0.at="isa" hint.fdc.0.drq="2" hint.fdc.0.irq="6" hint.fdc.0.port="0x3F0" hint.p4tcc.0.disabled="1" hint.ppc.0.at="isa" hint.ppc.0.irq="7" hint.psm.0.at="atkbdc" hint.psm.0.irq="12" hint.sc.0.at="isa" hint.sc.0.flags="0x100" hint.smbios.0.mem="0x4d580000" hint.uart.0.at="isa" hint.uart.0.flags="0x10" hint.uart.0.irq="4" hint.uart.0.port="0x3F8" hint.uart.1.at="isa" hint.uart.1.irq="3" hint.uart.1.port="0x2F8" hw.ata.atapi_dma="1" hw.ibrs_disable="0" hw.pci.allow_unsupported_io_range="1" hw.psm.elantech_support="1" hw.psm.trackpoint_support="1" kern.hz="8192" kern.ipc.semmni="40" kern.ipc.semmns="300" kern.ipc.shm_use_phys="1" kern.ipc.shmmni="1024" kern.ipc.shmseg="1024" kern.maxfiles="250000" kern.vty="vt" kernel="kernel" kernel_options="" kernel_path="/boot/kernel" kernelname="/boot/kernel/kernel" kernels="kernel kernel.old" kernels_autodetect="YES" loaddev="zfs:zsysS05/ROOT/default:" loader_conf_files="/boot/device.hints /boot/loader.conf /boot/loader.conf.local" machdep.mitigations.taa.enable="3" module_blacklist="drm drm2 radeonkms i915kms amdgpu" module_path="/boot/kernel;/boot/modules;/boot/dtb;/boot/dtb/overlays" net.graph.maxdata="65536" nextboot_conf="/boot/nextboot.conf" nextboot_enable="NO" script.lang="lua" smbios.bios.reldate="11/04/2019" smbios.bios.vendor="LENOVO" smbios.bios.version="N2CET48W (1.31 )" smbios.chassis.maker="LENOVO" smbios.chassis.serial="********" smbios.chassis.tag="No Asset Information" smbios.chassis.version="None" smbios.memory.enabled="33554432" smbios.planar.location="Not Available" smbios.planar.maker="LENOVO" smbios.planar.product="20M9CTO1WW" smbios.planar.serial="***********" smbios.planar.tag="Not Available" smbios.planar.version="SDK0J40697 WIN" smbios.socket.enabled="1" smbios.socket.populated="1" smbios.system.family="ThinkPad P52" smbios.system.maker="LENOVO" smbios.system.product="20M9CTO1WW" smbios.system.serial="********" smbios.system.sku="LENOVO_MT_20M9_BU_Think_FM_ThinkPad P52" smbios.system.uuid="********-****-****-****-************" smbios.system.version="ThinkPad P52" smbios.version="3.1" twiddle_divisor="1" verbose_loading="NO" vfs.root.mountfrom="zfs:zsysS05/ROOT/default" vfs.zfs.abd_chunk_size="1024" vfs.zfs.prefetch_disable="1" vm.pmap.pti="1" zfs_be_active="zfs:zsysS05/ROOT/default" zfs_be_currpage="1" zfs_be_root="zsysS05/ROOT" === `kenv` output except hardware serial No and UUID above === > > > > > >> > >> Regarding the issue with vm, I am afraid the roots are going much deeper there. I have not got to the exact cause (and therefore a fix), but the problem is not about this specific patch. The problem is about memory map, specifically one just before and after we switch off Boot Services. > > That's a very bad news for me. Looking at HEAD's commit list I hope > > that's a known problem? Or should I open a PR on bugs.FreeBSD.org ? > > > PR is always good idea. Finding the exact cause and getting sure fix is question of time. I have done quite amount of investigation, but I can not yet point the finger even as there is one known issue identified. *IF* I am correct about the issue, the fix will take some time as it is not too trivial. > > > > > > Moreover, I believe the next snapshot of the CURRENT (which will be made > > after r358989) made by the release team will be unbootable on VMware > > hypervisors. > > BIOS version is ok. > > rgds, > toomas > > > > >> > >> rgds, > >> toomas > >> > >> > >>> > >>> [1] > >>> https://old.reddit.com/r/freebsd/comments/drxqlm/failed_to_do_efi_boot_on_a_vmware_virtual_machine/f6om6p2/ > > >>>>>> > >>>>>> Not tried (not enough time for now as I'm mainly using stable/12), > >>>>>> but possibly calling efi_cons_probe() from efi_cons_init() would be > >>>>>> needed, as ome codes are moved from the latter to the former. > >>>>>> > >>>>>> > >>>>>>> Author: tsoome > >>>>>>> Date: Sat Mar 14 06:36:03 2020 > >>>>>>> New Revision: 358989 > >>>>>>> URL: https://svnweb.freebsd.org/changeset/base/358989 > >>>>>>> > >>>>>>> Log: > >>>>>>> loader: add comconsole implementation on top of SIO protocol > >>>>>>> > >>>>>>> Provide comconsole on top of SIO for arm platforms (x86 does use bios > >>>>>> version). > >>>>>>> > >>>>>>> Added: > >>>>>>> head/stand/efi/loader/efiserialio.c (contents, props changed) > >>>>>>> Modified: > >>>>>>> head/stand/efi/libefi/efi_console.c > >>>>>>> head/stand/efi/loader/arch/arm/Makefile.inc > >>>>>>> head/stand/efi/loader/arch/arm64/Makefile.inc > >>>>>>> head/stand/efi/loader/conf.c > >>>>>>> head/stand/efi/loader/main.c > >>>>>>> > >>>>>>> Modified: head/stand/efi/libefi/efi_console.c > >>>>>>> ============================================================================== > >>>>>>> --- head/stand/efi/libefi/efi_console.c Sat Mar 14 05:57:22 > >>>>>> 2020 (r358988) > >>>>>>> +++ head/stand/efi/libefi/efi_console.c > >>>>>> Sat Mar 14 06:36:03 2020 (r358989) > >>>>>>> @@ -377,9 +377,22 @@ efi_cons_respond(void *s __unused, const void *buf __u > >>>>>>> { > >>>>>>> } > >>>>>>> > >>>>>>> +/* > >>>>>>> + * Set up conin/conout/coninex to make sure we have input ready. > >>>>>>> + */ > >>>>>>> static void > >>>>>>> efi_cons_probe(struct console *cp) > >>>>>>> { > >>>>>>> + EFI_STATUS status; > >>>>>>> + > >>>>>>> + conout = ST->ConOut; > >>>>>>> + conin = ST->ConIn; > >>>>>>> + > >>>>>>> + status = BS->OpenProtocol(ST->ConsoleInHandle, > >>>>>> &simple_input_ex_guid, > >>>>>>> + (void **)&coninex, IH, NULL, > >>>>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); > >>>>>>> + if (status != EFI_SUCCESS) > >>>>>>> + coninex = NULL; > >>>>>>> + > >>>>>>> cp->c_flags |= C_PRESENTIN | C_PRESENTOUT; > >>>>>>> } > >>>>>>> > >>>>>>> @@ -889,15 +902,7 @@ efi_cons_init(int arg) > >>>>>>> if (conin != NULL) > >>>>>>> return (0); > >>>>>>> > >>>>>>> - conout = ST->ConOut; > >>>>>>> - conin = ST->ConIn; > >>>>>>> - > >>>>>>> conout->EnableCursor(conout, TRUE); > >>>>>>> - status = BS->OpenProtocol(ST->ConsoleInHandle, > >>>>>> &simple_input_ex_guid, > >>>>>>> - (void **)&coninex, IH, NULL, > >>>>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); > >>>>>>> - if (status != EFI_SUCCESS) > >>>>>>> - coninex = NULL; > >>>>>>> - > >>>>>>> if (efi_cons_update_mode()) > >>>>>>> return (0); > >>>>>>> > >>>>>>> > >>>>>>> Modified: head/stand/efi/loader/arch/arm/Makefile.inc > >>>>>>> ============================================================================== > >>>>>>> --- head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 > >>>>>> 05:57:22 2020 (r358988) > >>>>>>> +++ head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 06:36:03 > >>>>>> 2020 (r358989) > >>>>>>> @@ -1,6 +1,7 @@ > >>>>>>> # $FreeBSD$ > >>>>>>> > >>>>>>> SRCS+= exec.c \ > >>>>>>> + efiserialio.c \ > >>>>>>> start.S > >>>>>>> > >>>>>>> HAVE_FDT=yes > >>>>>> > >>>>>> (Snip) > >>>>>> > >>>>>>> @@ -930,7 +936,6 @@ main(int argc, CHAR16 *argv[]) > >>>>>>> if (!has_kbd && (howto & RB_PROBE)) > >>>>>>> howto |= RB_SERIAL | RB_MULTIPLE; > >>>>>>> howto &= ~RB_PROBE; > >>>>>>> - uhowto = parse_uefi_con_out(); > >>>>>>> > >>>>>>> /* > >>>>>>> * Read additional environment variables from the boot device's > >>>>>> > >>>>>> -- > >>>>>> Tomoaki AOKI > -- Tomoaki AOKI From owner-svn-src-head@freebsd.org Thu Mar 19 12:54:44 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 2478B25FB60; Thu, 19 Mar 2020 12:54:44 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jn1H5tddz4bxS; Thu, 19 Mar 2020 12:54:43 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id AA29DB2DF; Thu, 19 Mar 2020 12:54:43 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02JCshi7086746; Thu, 19 Mar 2020 12:54:43 GMT (envelope-from kp@FreeBSD.org) Received: (from kp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02JCshpq086745; Thu, 19 Mar 2020 12:54:43 GMT (envelope-from kp@FreeBSD.org) Message-Id: <202003191254.02JCshpq086745@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org using -f From: Kristof Provost Date: Thu, 19 Mar 2020 12:54:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359130 - head/sbin/pfctl X-SVN-Group: head X-SVN-Commit-Author: kp X-SVN-Commit-Paths: head/sbin/pfctl X-SVN-Commit-Revision: 359130 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 12:54:44 -0000 Author: kp Date: Thu Mar 19 12:54:43 2020 New Revision: 359130 URL: https://svnweb.freebsd.org/changeset/base/359130 Log: pfctl: improve rule load times with thousands of interfaces r343287 / D18759 introduced ifa_add_groups_to_map() which is now run by ifa_load/ifa_lookup/host_if. When loading an anchor or ruleset via pfctl that does NOT contain ifnames as hosts, host() still ends up iterating all interfaces twice, grabbing SIOCGIFGROUP ioctl twice for each. This adds an unnecessary amount of time on systems with thousands or tens of thousands of interfaces. Prioritize the IPv4/6 check over the interface name lookup, which skips loading the iftab and iterating all interfaces when the configuration does not contain interface names. Submitted by: Nick Rogers MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D24100 Modified: head/sbin/pfctl/pfctl_parser.c Modified: head/sbin/pfctl/pfctl_parser.c ============================================================================== --- head/sbin/pfctl/pfctl_parser.c Thu Mar 19 12:22:20 2020 (r359129) +++ head/sbin/pfctl/pfctl_parser.c Thu Mar 19 12:54:43 2020 (r359130) @@ -1563,16 +1563,17 @@ host(const char *s) mask = -1; } - /* interface with this name exists? */ - if (cont && (h = host_if(ps, mask)) != NULL) - cont = 0; - /* IPv4 address? */ if (cont && (h = host_v4(s, mask)) != NULL) cont = 0; /* IPv6 address? */ if (cont && (h = host_v6(ps, v6mask)) != NULL) + cont = 0; + + /* interface with this name exists? */ + /* expensive with thousands of interfaces - prioritze IPv4/6 check */ + if (cont && (h = host_if(ps, mask)) != NULL) cont = 0; /* dns lookup */ From owner-svn-src-head@freebsd.org Thu Mar 19 12:55:30 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7145525FC1B for ; Thu, 19 Mar 2020 12:55:30 +0000 (UTC) (envelope-from tsoome@me.com) Received: from pv50p00im-ztdg10021201.me.com (pv50p00im-ztdg10021201.me.com [17.58.6.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48jn284K2vz4dY7 for ; Thu, 19 Mar 2020 12:55:28 +0000 (UTC) (envelope-from tsoome@me.com) Received: from nazgul.lan (148-52-235-80.sta.estpak.ee [80.235.52.148]) by pv50p00im-ztdg10021201.me.com (Postfix) with ESMTPSA id 5EAC9A40503; Thu, 19 Mar 2020 12:55:22 +0000 (UTC) From: Toomas Soome Message-Id: Mime-Version: 1.0 (Mac OS X Mail 13.0 \(3608.60.0.2.5\)) Subject: Re: svn commit: r358989 - in head/stand/efi: libefi loader loader/arch/arm loader/arch/arm64 Date: Thu, 19 Mar 2020 14:55:19 +0200 In-Reply-To: <20200319213329.f354314a9a72e1419d76d2ba@dec.sakura.ne.jp> Cc: Ruslan Garipov , svn-src-head@freebsd.org To: junchoon@dec.sakura.ne.jp References: <20200316001745.07df62f72d647b924b657d86@dec.sakura.ne.jp> <746EE981-536F-49AD-9B76-F9F103ECB1F9@me.com> <20200317211614.bbe1b18a32d7863941fffbe8@dec.sakura.ne.jp> <55b1f91b-6157-bfee-cd74-124ed50bc663@gmail.com> <944c641f-b570-1420-6b63-96374217d795@gmail.com> <4ABF87AE-948F-43A8-940A-744FC2F4DE4D@me.com> <20200319213329.f354314a9a72e1419d76d2ba@dec.sakura.ne.jp> X-Mailer: Apple Mail (2.3608.60.0.2.5) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2020-03-19_04:, , signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1908290000 definitions=main-2003190058 X-Rspamd-Queue-Id: 48jn284K2vz4dY7 X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.53 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:17.58.0.0/16]; FREEMAIL_FROM(0.00)[me.com]; MV_CASE(0.50)[]; URI_COUNT_ODD(1.00)[61]; DKIM_TRACE(0.00)[me.com:+]; DMARC_POLICY_ALLOW(-0.50)[me.com,quarantine]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; FREEMAIL_ENVFROM(0.00)[me.com]; RCVD_IN_DNSWL_LOW(-0.10)[45.6.58.17.list.dnswl.org : 127.0.5.1]; ASN(0.00)[asn:714, ipnet:17.58.0.0/20, country:US]; MID_RHS_MATCH_FROM(0.00)[]; RECEIVED_SPAMHAUS_PBL(0.00)[148.52.235.80.khpj7ygk5idzvmvt5x4ziurxhy.zen.dq.spamhaus.net : 127.0.0.10]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.93)[-0.933,0]; R_DKIM_ALLOW(-0.20)[me.com:s=1a1hai]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; NEURAL_HAM_LONG(-0.99)[-0.994,0]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; IP_SCORE(0.00)[ip: (-3.91), ipnet: 17.58.0.0/20(-2.00), asn: 714(-2.38), country: US(-0.05)]; IP_SCORE_FREEMAIL(0.00)[]; DWL_DNSWL_LOW(-1.00)[me.com.dwl.dnswl.org : 127.0.5.1]; TO_MATCH_ENVRCPT_SOME(0.00)[]; FREEMAIL_CC(0.00)[gmail.com]; RCVD_TLS_ALL(0.00)[]; RCVD_COUNT_TWO(0.00)[2] Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 12:55:30 -0000 > On 19. Mar 2020, at 14:33, Tomoaki AOKI = wrote: >=20 > On Thu, 19 Mar 2020 00:28:59 +0200 > Toomas Soome > wrote: >=20 >>=20 >>=20 >>> On 18. Mar 2020, at 20:41, Ruslan Garipov = wrote: >>>=20 >>> On 3/18/2020 10:29 PM, Toomas Soome via svn-src-head wrote: >>>>=20 >>>>=20 >>>>> On 18. Mar 2020, at 18:40, Ruslan Garipov = wrote: >>>>>=20 >>>>> On 3/17/2020 5:16 PM, Tomoaki AOKI wrote: >>>>>> Hi! Thanks for your respond. >>>>>>=20 >>>>>> Unfortunately, no. >>>>>> I'm running on ThinkPad P52, which has no com connector = installed. >>>>>> No USB serial interface connected. >>>>>>=20 >>>>>> `efi-show -g global -v ConOut` on loader prompt shows >>>>>>=20 >>>>>> global NV,BS,RS ConOut =3D >>>>>> PciRoot(0,0)/Pci((0x1,oxo)/Pci(0x0,0x0)/AcpiAdr(0x80010100) >>>>>>=20 >>>>>> Moreover, my previous idea didn't help. >>>>>>=20 >>>>>> Neither >>>>>> console=3D"vidconsole" >>>>>> console=3D"eficonsole" >>>>>> console=3D"efi_console" >>>>>> nor >>>>>> console=3D"efi" >>>>>> in /boot/loader.conf works. >>>>>>=20 >>>>>> Defining / undefining TERM_EMU on build are untested. >>>>>>=20 >>>>>> Is there any setting for /boot/loader.conf to control the = behavior? >>>>>>=20 >>>>>>=20 >>>>>> Regards. >>>>>>=20 >>>>>>=20 >>>>>> On Mon, 16 Mar 2020 08:26:56 +0200 >>>>>> Toomas Soome wrote: >>>>>>=20 >>>>>>> Hi! >>>>>>>=20 >>>>>>> This means, your system has UART serial device =E3=80=93 you can = check this from loader prompt: efi-show -g global -v ConOut or with = efivar from running system. This would trigger efi console driver to use = TERM_EMU, which can be turned off by user and doing that would cause ESC = sequences to be passed directly to console. Might that be true in your = case? >>>>>>>=20 >>>>>>> rgds, >>>>>>> toomas >>>>>>>=20 >>>>>>>> On 15. Mar 2020, at 17:17, Tomoaki AOKI = wrote: >>>>>>>>=20 >>>>>>>> Hi. >>>>>>>>=20 >>>>>>>> This broke loader menu display on efifb. At least on amd64. >>>>>>>> ESC sequences without ESC character are shown. >>>>>>>> Key input (at least 1, 2 and enter) works OK. >>>>>>>> I suspect outputs for SIO is sent to efifb and ESC codes are = ignored. >>>>>>>>=20 >>>>>>>> Reverting this fixes the issue. >>>>> I got the same issue with loader menu when was upgrading from = r358827 to >>>>> r359028 (x86-64). >>>>>=20 >>>>> But unfortunately the broken menu is just a part of my problem. = The >>>>> real pain is that a FreeBSD 13.0-CURRENT system hosted by VMware = ESXi or >>>>> Workstation doesn't boot anymore after r358989. An ugly = workaround[1] >>>>> (exiting from the loader menu into the loader prompt, running ls = or >>>>> show, scrolling the result down and then executing boot) I found = some >>>>> time ago doesn't work anymore. After running boot/boot = -s/selecting >>>>> menu item, a hypervisor just shuts session down with the following >>>>> message: ``The firmware encountered an unexpected exception. The = virtual >>>>> machine cannot boot.'' >>>>>=20 >>>>> The virtual guests don't have any UART (even USB) serial devices = in >>>>> their settings. efi-show prints result similar to what Tomoaki = got: >>>>>=20 >>>>> OK efi-show -g global -v CounOut >>>>> global NV,BS,RS ConOut =3D = PciRoot(0x0)/Pci(0x2,0x0)/AcpiAdr(0x80014310) >>>>>=20 >>>>> Undefining TERM_EMU doesn't help. I had completely removed CFLAGS >>>>> assignment with TERM_EMU from stand/efi/libefi/Makefile and = rebuilt >>>>> kernel/world -- nothing changed. I don't define TERM_EMU in my >>>>> make.conf or/and src.conf. >>>>>=20 >>>>> Reverting this revision fix booting (and menu, of course). >>>>>=20 >>>>> FreeBSD on physical hardware boots just fine with this revision, = but has >>>>> corrupted loader menu. >>>>>=20 >>>>> Toomas, please help us to fix this. I can live with the broken = menu, >>>>> but I don't want to revert this revision every time I will upgrade = my >>>>> virtual machines after r359028 now. >>>>=20 >>>>=20 >>>> Hi! >>>>=20 >>>> The build, are you doing build with -DNO_CLEAN? or can you run make = clean in stand and then build it again? Otherwise, if you can poke me on = irc, I=E2=80=99d like to get to the bottom of this. >>> Hello! >>>=20 >>> I'm sorry, currently I have no access to either IRC, nor my build >>> machine. Therefore, I can't show you the build log. NO_CLEAN -- = no, I >>> don't use it. What I've actually done regarding to testing = TERM_EMU: I >>> removed `CFLAGS+=3D -DTERM_EMU` (and the .if condition wrapping this = line) >>> from the Makefile, removed /usr/obj directory, and buildworld and >>> buildkernel then. And then install rebuilt kernel/userland on a = target >>> machine. Nothing changed, but it should? >>=20 >>=20 >> Please try r359099. >=20 > Many thanks! Worked fine for me, at least buildworld after `make = clean` > on /usr/src/stand. >=20 >=20 > A bit details: > Cleaning /usr/src/stand before building itself didn't help. > Updating to r359099 and later was mandatory. > No VMs are tested, as I'm currently not running any VMs. >=20 >=20 > For your further investigation, kenv output is like this: This output is not from patched loader, is it? Could you mail me from = latest =E2=80=94 specifically, I=E2=80=99m expecting to see LINES and = COLUMNS values.=20 What seems to be the cause is, we allocate screen buffer for text, if = that allocation does fail, we did abort efi_cons_init() and the putchar = did switch to direct output without interpreting the esc sequences. Now = the question would be, why we failed to allocate the buffer - we do have = 64MB heap as default and console is initialized early=E2=80=A6 thanks, toomas >=20 > =3D=3D=3D `kenv` output except hardware serial No. and UUID below =3D=3D= =3D >=20 > acpi.oem=3D"LENOVO" > acpi.revision=3D"2" > acpi.rsdp=3D"0x000000004fd0e014" > acpi.rsdt=3D"0x000000004fd0c0c4" > acpi.xsdt=3D"0x000000004fd0c188" > acpi.xsdt_length=3D"36" > bootenv_autolist=3D"YES" > bootenvs[0]=3D"zfs:zsysS05/ROOT/head-r359007-boot1Rev6TA3" > bootenvs[10]=3D"zfs:zsysS05/ROOT/head-r358565-boot1Rev6TA3" > bootenvs[11]=3D"zfs:zsysS05/ROOT/" > bootenvs[1]=3D"zfs:zsysS05/ROOT/head-r359005-boot1Rev6TA3" > bootenvs[2]=3D"zfs:zsysS05/ROOT/head-r358989-boot1Rev6TA3" > bootenvs[3]=3D"zfs:zsysS05/ROOT/head-r358906-boot1Rev6TA3" > bootenvs[4]=3D"zfs:zsysS05/ROOT/head-r358872-boot1Rev6TA3" > bootenvs[5]=3D"zfs:zsysS05/ROOT/head-r358865-boot1Rev6TA3-2" > bootenvs[6]=3D"zfs:zsysS05/ROOT/head-r358827-boot1Rev6TA3" > bootenvs[7]=3D"zfs:zsysS05/ROOT/head-r358734-boot1Rev6TA3" > bootenvs[8]=3D"zfs:zsysS05/ROOT/head-r358729-boot1Rev6TA3" > bootenvs[9]=3D"zfs:zsysS05/ROOT/head-r358669-boot1Rev6TA3" > bootenvs_count=3D"12" > bootfile=3D"kernel" > comconsole_pcidev=3D"" > comconsole_port=3D"1016" > comconsole_speed=3D"9600" > console=3D"efi" > currdev=3D"zfs:zsysS05/ROOT/default:" > efi-version=3D"2.60" > efi_max_resolution=3D"2160p" > hint.acpi.0.oem=3D"LENOVO" > hint.acpi.0.revision=3D"2" > hint.acpi.0.rsdp=3D"0x000000004fd0e014" > hint.acpi.0.rsdt=3D"0x000000004fd0c0c4" > hint.acpi.0.xsdt=3D"0x000000004fd0c188" > hint.acpi.0.xsdt_length=3D"36" > hint.acpi_throttle.0.disabled=3D"1" > hint.atkbd.0.at =3D"atkbdc" > hint.atkbd.0.irq=3D"1" > hint.atkbdc.0.at =3D"isa" > hint.atkbdc.0.port=3D"0x060" > hint.atrtc.0.at =3D"isa" > hint.atrtc.0.irq=3D"8" > hint.atrtc.0.port=3D"0x70" > hint.attimer.0.at =3D"isa" > hint.attimer.0.irq=3D"0" > hint.attimer.0.port=3D"0x40" > hint.fd.0.at =3D"fdc0" > hint.fd.0.drive=3D"0" > hint.fd.1.at =3D"fdc0" > hint.fd.1.drive=3D"1" > hint.fdc.0.at =3D"isa" > hint.fdc.0.drq=3D"2" > hint.fdc.0.irq=3D"6" > hint.fdc.0.port=3D"0x3F0" > hint.p4tcc.0.disabled=3D"1" > hint.ppc.0.at =3D"isa" > hint.ppc.0.irq=3D"7" > hint.psm.0.at =3D"atkbdc" > hint.psm.0.irq=3D"12" > hint.sc.0.at =3D"isa" > hint.sc.0.flags=3D"0x100" > hint.smbios.0.mem=3D"0x4d580000" > hint.uart.0.at =3D"isa" > hint.uart.0.flags=3D"0x10" > hint.uart.0.irq=3D"4" > hint.uart.0.port=3D"0x3F8" > hint.uart.1.at =3D"isa" > hint.uart.1.irq=3D"3" > hint.uart.1.port=3D"0x2F8" > hw.ata.atapi_dma=3D"1" > hw.ibrs_disable=3D"0" > hw.pci.allow_unsupported_io_range=3D"1" > hw.psm.elantech_support=3D"1" > hw.psm.trackpoint_support=3D"1" > kern.hz=3D"8192" > kern.ipc.semmni=3D"40" > kern.ipc.semmns=3D"300" > kern.ipc.shm_use_phys=3D"1" > kern.ipc.shmmni=3D"1024" > kern.ipc.shmseg=3D"1024" > kern.maxfiles=3D"250000" > kern.vty=3D"vt" > kernel=3D"kernel" > kernel_options=3D"" > kernel_path=3D"/boot/kernel" > kernelname=3D"/boot/kernel/kernel" > kernels=3D"kernel kernel.old" > kernels_autodetect=3D"YES" > loaddev=3D"zfs:zsysS05/ROOT/default:" > loader_conf_files=3D"/boot/device.hints /boot/loader.conf = /boot/loader.conf.local" > machdep.mitigations.taa.enable=3D"3" > module_blacklist=3D"drm drm2 radeonkms i915kms amdgpu" > module_path=3D"/boot/kernel;/boot/modules;/boot/dtb;/boot/dtb/overlays" > net.graph.maxdata=3D"65536" > nextboot_conf=3D"/boot/nextboot.conf" > nextboot_enable=3D"NO" > script.lang=3D"lua" > smbios.bios.reldate=3D"11/04/2019" > smbios.bios.vendor=3D"LENOVO" > smbios.bios.version=3D"N2CET48W (1.31 )" > smbios.chassis.maker=3D"LENOVO" > smbios.chassis.serial=3D"********" > smbios.chassis.tag=3D"No Asset Information" > smbios.chassis.version=3D"None" > smbios.memory.enabled=3D"33554432" > smbios.planar.location=3D"Not Available" > smbios.planar.maker=3D"LENOVO" > smbios.planar.product=3D"20M9CTO1WW" > smbios.planar.serial=3D"***********" > smbios.planar.tag=3D"Not Available" > smbios.planar.version=3D"SDK0J40697 WIN" > smbios.socket.enabled=3D"1" > smbios.socket.populated=3D"1" > smbios.system.family=3D"ThinkPad P52" > smbios.system.maker=3D"LENOVO" > smbios.system.product=3D"20M9CTO1WW" > smbios.system.serial=3D"********" > smbios.system.sku=3D"LENOVO_MT_20M9_BU_Think_FM_ThinkPad P52" > smbios.system.uuid=3D"********-****-****-****-************" > smbios.system.version=3D"ThinkPad P52" > smbios.version=3D"3.1" > twiddle_divisor=3D"1" > verbose_loading=3D"NO" > vfs.root.mountfrom=3D"zfs:zsysS05/ROOT/default" > vfs.zfs.abd_chunk_size=3D"1024" > vfs.zfs.prefetch_disable=3D"1" > vm.pmap.pti=3D"1" > zfs_be_active=3D"zfs:zsysS05/ROOT/default" > zfs_be_currpage=3D"1" > zfs_be_root=3D"zsysS05/ROOT" >=20 >=20 > =3D=3D=3D `kenv` output except hardware serial No and UUID above =3D=3D=3D= >=20 >=20 >>=20 >>=20 >>>=20 >>>>=20 >>>> Regarding the issue with vm, I am afraid the roots are going much = deeper there. I have not got to the exact cause (and therefore a fix), = but the problem is not about this specific patch. The problem is about = memory map, specifically one just before and after we switch off Boot = Services.=20 >>> That's a very bad news for me. Looking at HEAD's commit list I hope >>> that's a known problem? Or should I open a PR on bugs.FreeBSD.org = >? >>=20 >>=20 >> PR is always good idea. Finding the exact cause and getting sure fix = is question of time. I have done quite amount of investigation, but I = can not yet point the finger even as there is one known issue = identified. *IF* I am correct about the issue, the fix will take some = time as it is not too trivial. >>=20 >>=20 >>>=20 >>> Moreover, I believe the next snapshot of the CURRENT (which will be = made >>> after r358989) made by the release team will be unbootable on VMware >>> hypervisors. >>=20 >> BIOS version is ok. >>=20 >> rgds, >> toomas >>=20 >>>=20 >>>>=20 >>>> rgds, >>>> toomas >>>>=20 >>>>=20 >>>>>=20 >>>>> [1] >>>>> = https://old.reddit.com/r/freebsd/comments/drxqlm/failed_to_do_efi_boot_on_= a_vmware_virtual_machine/f6om6p2/ = >>> >>>>>>>>=20 >>>>>>>> Not tried (not enough time for now as I'm mainly using = stable/12), >>>>>>>> but possibly calling efi_cons_probe() from efi_cons_init() = would be >>>>>>>> needed, as ome codes are moved from the latter to the former. >>>>>>>>=20 >>>>>>>>=20 >>>>>>>>> Author: tsoome >>>>>>>>> Date: Sat Mar 14 06:36:03 2020 >>>>>>>>> New Revision: 358989 >>>>>>>>> URL: https://svnweb.freebsd.org/changeset/base/358989 >>>>>>>>>=20 >>>>>>>>> Log: >>>>>>>>> loader: add comconsole implementation on top of SIO protocol >>>>>>>>>=20 >>>>>>>>> Provide comconsole on top of SIO for arm platforms (x86 does = use bios >>>>>>>> version). >>>>>>>>>=20 >>>>>>>>> Added: >>>>>>>>> head/stand/efi/loader/efiserialio.c (contents, props = changed) >>>>>>>>> Modified: >>>>>>>>> head/stand/efi/libefi/efi_console.c >>>>>>>>> head/stand/efi/loader/arch/arm/Makefile.inc >>>>>>>>> head/stand/efi/loader/arch/arm64/Makefile.inc >>>>>>>>> head/stand/efi/loader/conf.c >>>>>>>>> head/stand/efi/loader/main.c >>>>>>>>>=20 >>>>>>>>> Modified: head/stand/efi/libefi/efi_console.c >>>>>>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>>>>>> --- head/stand/efi/libefi/efi_console.c Sat Mar 14 = 05:57:22 >>>>>>>> 2020 (r358988) >>>>>>>>> +++ head/stand/efi/libefi/efi_console.c >>>>>>>> Sat Mar 14 06:36:03 2020 (r358989) >>>>>>>>> @@ -377,9 +377,22 @@ efi_cons_respond(void *s __unused, const = void *buf __u >>>>>>>>> { >>>>>>>>> } >>>>>>>>>=20 >>>>>>>>> +/* >>>>>>>>> + * Set up conin/conout/coninex to make sure we have input = ready. >>>>>>>>> + */ >>>>>>>>> static void >>>>>>>>> efi_cons_probe(struct console *cp) >>>>>>>>> { >>>>>>>>> + EFI_STATUS status; >>>>>>>>> + >>>>>>>>> + conout =3D ST->ConOut; >>>>>>>>> + conin =3D ST->ConIn; >>>>>>>>> + >>>>>>>>> + status =3D BS->OpenProtocol(ST->ConsoleInHandle, >>>>>>>> &simple_input_ex_guid, >>>>>>>>> + (void **)&coninex, IH, NULL, >>>>>>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); >>>>>>>>> + if (status !=3D EFI_SUCCESS) >>>>>>>>> + coninex =3D NULL; >>>>>>>>> + >>>>>>>>> cp->c_flags |=3D C_PRESENTIN | C_PRESENTOUT; >>>>>>>>> } >>>>>>>>>=20 >>>>>>>>> @@ -889,15 +902,7 @@ efi_cons_init(int arg) >>>>>>>>> if (conin !=3D NULL) >>>>>>>>> return (0); >>>>>>>>>=20 >>>>>>>>> - conout =3D ST->ConOut; >>>>>>>>> - conin =3D ST->ConIn; >>>>>>>>> - >>>>>>>>> conout->EnableCursor(conout, TRUE); >>>>>>>>> - status =3D BS->OpenProtocol(ST->ConsoleInHandle, >>>>>>>> &simple_input_ex_guid, >>>>>>>>> - (void **)&coninex, IH, NULL, >>>>>>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); >>>>>>>>> - if (status !=3D EFI_SUCCESS) >>>>>>>>> - coninex =3D NULL; >>>>>>>>> - >>>>>>>>> if (efi_cons_update_mode()) >>>>>>>>> return (0); >>>>>>>>>=20 >>>>>>>>>=20 >>>>>>>>> Modified: head/stand/efi/loader/arch/arm/Makefile.inc >>>>>>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>>>>>> --- head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar = 14 >>>>>>>> 05:57:22 2020 (r358988) >>>>>>>>> +++ head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar = 14 06:36:03 >>>>>>>> 2020 (r358989) >>>>>>>>> @@ -1,6 +1,7 @@ >>>>>>>>> # $FreeBSD$ >>>>>>>>>=20 >>>>>>>>> SRCS+=3D exec.c \ >>>>>>>>> + efiserialio.c \ >>>>>>>>> start.S >>>>>>>>>=20 >>>>>>>>> HAVE_FDT=3Dyes >>>>>>>>=20 >>>>>>>> (Snip) >>>>>>>>=20 >>>>>>>>> @@ -930,7 +936,6 @@ main(int argc, CHAR16 *argv[]) >>>>>>>>> if (!has_kbd && (howto & RB_PROBE)) >>>>>>>>> howto |=3D RB_SERIAL | RB_MULTIPLE; >>>>>>>>> howto &=3D ~RB_PROBE; >>>>>>>>> - uhowto =3D parse_uefi_con_out(); >>>>>>>>>=20 >>>>>>>>> /* >>>>>>>>> * Read additional environment variables from the boot = device's >>>>>>>>=20 >>>>>>>> --=20 >>>>>>>> Tomoaki AOKI >>=20 >=20 >=20 > --=20 > Tomoaki AOKI > From owner-svn-src-head@freebsd.org Thu Mar 19 14:37:29 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 88546261A91; Thu, 19 Mar 2020 14:37:29 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jqHs1z0tz49y2; Thu, 19 Mar 2020 14:37:29 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 138BEC6BA; Thu, 19 Mar 2020 14:37:29 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02JEbSFZ045884; Thu, 19 Mar 2020 14:37:28 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02JEbShX045883; Thu, 19 Mar 2020 14:37:28 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <202003191437.02JEbShX045883@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Thu, 19 Mar 2020 14:37:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359131 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 359131 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 14:37:29 -0000 Author: tuexen Date: Thu Mar 19 14:37:28 2020 New Revision: 359131 URL: https://svnweb.freebsd.org/changeset/base/359131 Log: The MTU candidates MUST be a multiple of 4, so make them so. MFC after: 1 week Modified: head/sys/netinet/sctputil.c Modified: head/sys/netinet/sctputil.c ============================================================================== --- head/sys/netinet/sctputil.c Thu Mar 19 12:54:43 2020 (r359130) +++ head/sys/netinet/sctputil.c Thu Mar 19 14:37:28 2020 (r359131) @@ -862,7 +862,7 @@ static uint32_t sctp_mtu_sizes[] = { 2048, 4352, 4464, - 8166, + 8168, 17912, 32000, 65532 From owner-svn-src-head@freebsd.org Thu Mar 19 15:39:46 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 46DBA262A9F; Thu, 19 Mar 2020 15:39:46 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jrgk00svz4THf; Thu, 19 Mar 2020 15:39:46 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A7C46D21C; Thu, 19 Mar 2020 15:39:45 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02JFdjD4082093; Thu, 19 Mar 2020 15:39:45 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02JFdjlH082092; Thu, 19 Mar 2020 15:39:45 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202003191539.02JFdjlH082092@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Thu, 19 Mar 2020 15:39:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359132 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 359132 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 15:39:46 -0000 Author: markj Date: Thu Mar 19 15:39:45 2020 New Revision: 359132 URL: https://svnweb.freebsd.org/changeset/base/359132 Log: Enter a write sequence when updating rights. The Capsicum system calls modify file descriptor table entries. To ensure that readers observe a consistent snapshot of descriptor writes, the system calls need to signal to unlocked readers that an update is pending. Note that ioctl rights are always checked with the descriptor table lock held, so it is not strictly necessary to signal unlocked readers. However, we probably want to enable lockless ioctl checks eventually, so use seqc_write_begin() in kern_cap_ioctls_limit() too. Reviewed by: kib MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D24119 Modified: head/sys/kern/sys_capability.c Modified: head/sys/kern/sys_capability.c ============================================================================== --- head/sys/kern/sys_capability.c Thu Mar 19 14:37:28 2020 (r359131) +++ head/sys/kern/sys_capability.c Thu Mar 19 15:39:45 2020 (r359132) @@ -234,6 +234,7 @@ kern_cap_rights_limit(struct thread *td, int fd, cap_r { struct filedesc *fdp; struct filedescent *fdep; + u_long *ioctls; int error; fdp = td->td_proc->p_fd; @@ -243,18 +244,22 @@ kern_cap_rights_limit(struct thread *td, int fd, cap_r FILEDESC_XUNLOCK(fdp); return (EBADF); } + ioctls = NULL; error = _cap_check(cap_rights(fdp, fd), rights, CAPFAIL_INCREASE); if (error == 0) { + seqc_write_begin(&fdep->fde_seqc); fdep->fde_rights = *rights; if (!cap_rights_is_set(rights, CAP_IOCTL)) { - free(fdep->fde_ioctls, M_FILECAPS); + ioctls = fdep->fde_ioctls; fdep->fde_ioctls = NULL; fdep->fde_nioctls = 0; } if (!cap_rights_is_set(rights, CAP_FCNTL)) fdep->fde_fcntls = 0; + seqc_write_end(&fdep->fde_seqc); } FILEDESC_XUNLOCK(fdp); + free(ioctls, M_FILECAPS); return (error); } @@ -439,8 +444,10 @@ kern_cap_ioctls_limit(struct thread *td, int fd, u_lon goto out; ocmds = fdep->fde_ioctls; + seqc_write_begin(&fdep->fde_seqc); fdep->fde_ioctls = cmds; fdep->fde_nioctls = ncmds; + seqc_write_end(&fdep->fde_seqc); cmds = ocmds; error = 0; @@ -597,7 +604,9 @@ sys_cap_fcntls_limit(struct thread *td, struct cap_fcn return (ENOTCAPABLE); } + seqc_write_begin(&fdep->fde_seqc); fdep->fde_fcntls = fcntlrights; + seqc_write_end(&fdep->fde_seqc); FILEDESC_XUNLOCK(fdp); return (0); From owner-svn-src-head@freebsd.org Thu Mar 19 15:40:07 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 8B309262AF5; Thu, 19 Mar 2020 15:40:07 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jrh65HBLz4V0T; Thu, 19 Mar 2020 15:40:06 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 49F97D223; Thu, 19 Mar 2020 15:40:06 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02JFe61Z082193; Thu, 19 Mar 2020 15:40:06 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02JFe6xP082192; Thu, 19 Mar 2020 15:40:06 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202003191540.02JFe6xP082192@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Thu, 19 Mar 2020 15:40:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359133 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 359133 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 15:40:07 -0000 Author: markj Date: Thu Mar 19 15:40:05 2020 New Revision: 359133 URL: https://svnweb.freebsd.org/changeset/base/359133 Log: kern_dup(): Call filecaps_free_prep() in a write section. filecaps_free_prep() bzeros the capabilities structure and we need to be careful to synchronize with unlocked readers, which expect a consistent rights structure. Reviewed by: kib, mjg Reported by: syzbot+5f30b507f91ddedded21@syzkaller.appspotmail.com MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D24120 Modified: head/sys/kern/kern_descrip.c Modified: head/sys/kern/kern_descrip.c ============================================================================== --- head/sys/kern/kern_descrip.c Thu Mar 19 15:39:45 2020 (r359132) +++ head/sys/kern/kern_descrip.c Thu Mar 19 15:40:05 2020 (r359133) @@ -968,7 +968,6 @@ kern_dup(struct thread *td, u_int mode, int flags, int newfde = &fdp->fd_ofiles[new]; delfp = newfde->fde_file; - oioctls = filecaps_free_prep(&newfde->fde_caps); nioctls = filecaps_copy_prep(&oldfde->fde_caps); /* @@ -977,6 +976,7 @@ kern_dup(struct thread *td, u_int mode, int flags, int #ifdef CAPABILITIES seqc_write_begin(&newfde->fde_seqc); #endif + oioctls = filecaps_free_prep(&newfde->fde_caps); memcpy(newfde, oldfde, fde_change_size); filecaps_copy_finish(&oldfde->fde_caps, &newfde->fde_caps, nioctls); From owner-svn-src-head@freebsd.org Thu Mar 19 17:20:51 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id AC3AD2653A9; Thu, 19 Mar 2020 17:20:51 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jtwM3YkBz3RFF; Thu, 19 Mar 2020 17:20:51 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5564FE607; Thu, 19 Mar 2020 17:20:51 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02JHKprd043731; Thu, 19 Mar 2020 17:20:51 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02JHKpD6043730; Thu, 19 Mar 2020 17:20:51 GMT (envelope-from mav@FreeBSD.org) Message-Id: <202003191720.02JHKpD6043730@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 19 Mar 2020 17:20:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359146 - head/sys/cam/scsi X-SVN-Group: head X-SVN-Commit-Author: mav X-SVN-Commit-Paths: head/sys/cam/scsi X-SVN-Commit-Revision: 359146 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 17:20:51 -0000 Author: mav Date: Thu Mar 19 17:20:50 2020 New Revision: 359146 URL: https://svnweb.freebsd.org/changeset/base/359146 Log: Fix SES on device slots without phys after r349321. Broadcom 9400-8i8e HBAs report virtual SES device, where slots representing external connectors are reported having no phys. Since sasdev_phys is NULL there and proto_hdr is a union, ses_paths_iter() misinterpreted them as ATA. Add explicit protocol check to properly differentiate them. MFC after: 1 week Sponsored by: iXsystems, Inc. Modified: head/sys/cam/scsi/scsi_enc_ses.c Modified: head/sys/cam/scsi/scsi_enc_ses.c ============================================================================== --- head/sys/cam/scsi/scsi_enc_ses.c Thu Mar 19 17:01:57 2020 (r359145) +++ head/sys/cam/scsi/scsi_enc_ses.c Thu Mar 19 17:20:50 2020 (r359146) @@ -956,30 +956,38 @@ ses_paths_iter(enc_softc_t *enc, enc_element_t *elm, if (addl->hdr == NULL) return; - if (addl->proto_hdr.sas != NULL && - addl->proto_data.sasdev_phys != NULL) { - ses_path_iter_args_t args; + switch(ses_elm_addlstatus_proto(addl->hdr)) { + case SPSP_PROTO_SAS: + if (addl->proto_hdr.sas != NULL && + addl->proto_data.sasdev_phys != NULL) { + ses_path_iter_args_t args; - args.callback = callback; - args.callback_arg = callback_arg; - ses_devids_iter(enc, elm, ses_path_iter_devid_callback, &args); - } else if (addl->proto_hdr.ata != NULL) { - struct cam_path *path; - struct ccb_getdev cgd; + args.callback = callback; + args.callback_arg = callback_arg; + ses_devids_iter(enc, elm, ses_path_iter_devid_callback, + &args); + } + break; + case SPSP_PROTO_ATA: + if (addl->proto_hdr.ata != NULL) { + struct cam_path *path; + struct ccb_getdev cgd; - if (xpt_create_path(&path, /*periph*/NULL, - scsi_4btoul(addl->proto_hdr.ata->bus), - scsi_4btoul(addl->proto_hdr.ata->target), 0) - != CAM_REQ_CMP) - return; + if (xpt_create_path(&path, /*periph*/NULL, + scsi_4btoul(addl->proto_hdr.ata->bus), + scsi_4btoul(addl->proto_hdr.ata->target), 0) + != CAM_REQ_CMP) + return; - xpt_setup_ccb(&cgd.ccb_h, path, CAM_PRIORITY_NORMAL); - cgd.ccb_h.func_code = XPT_GDEV_TYPE; - xpt_action((union ccb *)&cgd); - if (cgd.ccb_h.status == CAM_REQ_CMP) - callback(enc, elm, path, callback_arg); + xpt_setup_ccb(&cgd.ccb_h, path, CAM_PRIORITY_NORMAL); + cgd.ccb_h.func_code = XPT_GDEV_TYPE; + xpt_action((union ccb *)&cgd); + if (cgd.ccb_h.status == CAM_REQ_CMP) + callback(enc, elm, path, callback_arg); - xpt_free_path(path); + xpt_free_path(path); + } + break; } } From owner-svn-src-head@freebsd.org Thu Mar 19 17:27:09 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 730262656CF; Thu, 19 Mar 2020 17:27:09 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jv3d0tQJz4CKH; Thu, 19 Mar 2020 17:27:09 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D2552E6CE; Thu, 19 Mar 2020 17:27:08 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02JHR88N048986; Thu, 19 Mar 2020 17:27:08 GMT (envelope-from tsoome@FreeBSD.org) Received: (from tsoome@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02JHR8gd048985; Thu, 19 Mar 2020 17:27:08 GMT (envelope-from tsoome@FreeBSD.org) Message-Id: <202003191727.02JHR8gd048985@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tsoome set sender to tsoome@FreeBSD.org using -f From: Toomas Soome Date: Thu, 19 Mar 2020 17:27:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359147 - head/stand/common X-SVN-Group: head X-SVN-Commit-Author: tsoome X-SVN-Commit-Paths: head/stand/common X-SVN-Commit-Revision: 359147 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 17:27:09 -0000 Author: tsoome Date: Thu Mar 19 17:27:08 2020 New Revision: 359147 URL: https://svnweb.freebsd.org/changeset/base/359147 Log: loader: misaligned access of dos_partition structure armv7 crash due to misligned access of dos_partition dp_start field. Allocate and make copy of dos_partition array to make sure the data is aligned. Reported by: marklmi at yahoo.com Modified: head/stand/common/part.c Modified: head/stand/common/part.c ============================================================================== --- head/stand/common/part.c Thu Mar 19 17:20:50 2020 (r359146) +++ head/stand/common/part.c Thu Mar 19 17:27:08 2020 (r359147) @@ -654,6 +654,7 @@ ptable_open(void *dev, uint64_t sectors, uint16_t sect int has_ext; #endif table = NULL; + dp = NULL; buf = malloc(sectorsize); if (buf == NULL) return (NULL); @@ -708,7 +709,11 @@ ptable_open(void *dev, uint64_t sectors, uint16_t sect goto out; } /* Check that we have PMBR. Also do some validation. */ - dp = (struct dos_partition *)(buf + DOSPARTOFF); + dp = malloc(NDOSPART * sizeof(struct dos_partition)); + if (dp == NULL) + goto out; + bcopy(buf + DOSPARTOFF, dp, NDOSPART * sizeof(struct dos_partition)); + /* * In mac we can have PMBR partition in hybrid MBR; * that is, MBR partition which has DOSPTYP_PMBR entry defined as @@ -770,6 +775,7 @@ ptable_open(void *dev, uint64_t sectors, uint16_t sect #endif /* LOADER_MBR_SUPPORT */ #endif /* LOADER_MBR_SUPPORT || LOADER_GPT_SUPPORT */ out: + free(dp); free(buf); return (table); } From owner-svn-src-head@freebsd.org Thu Mar 19 18:55:57 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 8474C26E41B; Thu, 19 Mar 2020 18:55:57 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jx240FqGz4TxY; Thu, 19 Mar 2020 18:55:56 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 23241F7C9; Thu, 19 Mar 2020 18:55:55 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02JIts8H002933; Thu, 19 Mar 2020 18:55:54 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02JItsK1002930; Thu, 19 Mar 2020 18:55:54 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <202003191855.02JItsK1002930@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Thu, 19 Mar 2020 18:55:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359151 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 359151 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 18:55:57 -0000 Author: tuexen Date: Thu Mar 19 18:55:54 2020 New Revision: 359151 URL: https://svnweb.freebsd.org/changeset/base/359151 Log: Cleanup the stream reset and asconf timer. MFC after: 1 week Modified: head/sys/netinet/sctp_timer.c head/sys/netinet/sctp_timer.h head/sys/netinet/sctputil.c Modified: head/sys/netinet/sctp_timer.c ============================================================================== --- head/sys/netinet/sctp_timer.c Thu Mar 19 18:17:43 2020 (r359150) +++ head/sys/netinet/sctp_timer.c Thu Mar 19 18:55:54 2020 (r359151) @@ -1103,10 +1103,9 @@ sctp_cookie_timer(struct sctp_inpcb *inp, } int -sctp_strreset_timer(struct sctp_inpcb *inp, struct sctp_tcb *stcb, - struct sctp_nets *net) +sctp_strreset_timer(struct sctp_inpcb *inp, struct sctp_tcb *stcb) { - struct sctp_nets *alt; + struct sctp_nets *alt, *net; struct sctp_tmit_chunk *strrst = NULL, *chk = NULL; if (stcb->asoc.stream_reset_outstanding == 0) { @@ -1117,9 +1116,9 @@ sctp_strreset_timer(struct sctp_inpcb *inp, struct sct if (strrst == NULL) { return (0); } + net = strrst->whoTo; /* do threshold management */ - if (sctp_threshold_management(inp, stcb, strrst->whoTo, - stcb->asoc.max_send_times)) { + if (sctp_threshold_management(inp, stcb, net, stcb->asoc.max_send_times)) { /* Assoc is over */ return (1); } @@ -1127,9 +1126,8 @@ sctp_strreset_timer(struct sctp_inpcb *inp, struct sct * Cleared threshold management, now lets backoff the address and * select an alternate */ - sctp_backoff_on_timeout(stcb, strrst->whoTo, 1, 0, 0); - alt = sctp_find_alternate_net(stcb, strrst->whoTo, 0); - sctp_free_remote_addr(strrst->whoTo); + sctp_backoff_on_timeout(stcb, net, 1, 0, 0); + alt = sctp_find_alternate_net(stcb, net, 0); strrst->whoTo = alt; atomic_add_int(&alt->ref_count, 1); @@ -1154,6 +1152,8 @@ sctp_strreset_timer(struct sctp_inpcb *inp, struct sct */ sctp_move_chunks_from_net(stcb, net); } + sctp_free_remote_addr(net); + /* mark the retran info */ if (strrst->sent != SCTP_DATAGRAM_RESEND) sctp_ucount_incr(stcb->asoc.sent_queue_retran_cnt); @@ -1161,7 +1161,7 @@ sctp_strreset_timer(struct sctp_inpcb *inp, struct sct strrst->flags |= CHUNK_FLAGS_FRAGMENT_OK; /* restart the timer */ - sctp_timer_start(SCTP_TIMER_TYPE_STRRESET, inp, stcb, strrst->whoTo); + sctp_timer_start(SCTP_TIMER_TYPE_STRRESET, inp, stcb, alt); return (0); } @@ -1186,8 +1186,9 @@ sctp_asconf_timer(struct sctp_inpcb *inp, struct sctp_ if (asconf == NULL) { return (0); } + net = asconf->whoTo; /* do threshold management */ - if (sctp_threshold_management(inp, stcb, asconf->whoTo, + if (sctp_threshold_management(inp, stcb, net, stcb->asoc.max_send_times)) { /* Assoc is over */ return (1); @@ -1208,10 +1209,9 @@ sctp_asconf_timer(struct sctp_inpcb *inp, struct sctp_ * cleared threshold management, so now backoff the net and * select an alternate */ - sctp_backoff_on_timeout(stcb, asconf->whoTo, 1, 0, 0); - alt = sctp_find_alternate_net(stcb, asconf->whoTo, 0); + sctp_backoff_on_timeout(stcb, net, 1, 0, 0); + alt = sctp_find_alternate_net(stcb, net, 0); if (asconf->whoTo != alt) { - sctp_free_remote_addr(asconf->whoTo); asconf->whoTo = alt; atomic_add_int(&alt->ref_count, 1); } @@ -1248,6 +1248,8 @@ sctp_asconf_timer(struct sctp_inpcb *inp, struct sctp_ */ sctp_move_chunks_from_net(stcb, net); } + sctp_free_remote_addr(net); + /* mark the retran info */ if (asconf->sent != SCTP_DATAGRAM_RESEND) sctp_ucount_incr(stcb->asoc.sent_queue_retran_cnt); Modified: head/sys/netinet/sctp_timer.h ============================================================================== --- head/sys/netinet/sctp_timer.h Thu Mar 19 18:17:43 2020 (r359150) +++ head/sys/netinet/sctp_timer.h Thu Mar 19 18:55:54 2020 (r359151) @@ -50,12 +50,15 @@ sctp_find_alternate_net(struct sctp_tcb *, int sctp_t3rxt_timer(struct sctp_inpcb *, struct sctp_tcb *, struct sctp_nets *); + int sctp_t1init_timer(struct sctp_inpcb *, struct sctp_tcb *, struct sctp_nets *); + int sctp_shutdown_timer(struct sctp_inpcb *, struct sctp_tcb *, struct sctp_nets *); + int sctp_heartbeat_timer(struct sctp_inpcb *, struct sctp_tcb *, struct sctp_nets *); @@ -72,8 +75,7 @@ int sctp_shutdownack_timer(struct sctp_inpcb *, struct sctp_tcb *, struct sctp_nets *); int -sctp_strreset_timer(struct sctp_inpcb *inp, struct sctp_tcb *stcb, - struct sctp_nets *net); + sctp_strreset_timer(struct sctp_inpcb *, struct sctp_tcb *); int sctp_asconf_timer(struct sctp_inpcb *, struct sctp_tcb *, Modified: head/sys/netinet/sctputil.c ============================================================================== --- head/sys/netinet/sctputil.c Thu Mar 19 18:17:43 2020 (r359150) +++ head/sys/netinet/sctputil.c Thu Mar 19 18:55:54 2020 (r359151) @@ -1939,7 +1939,7 @@ sctp_timeout_handler(void *t) if ((stcb == NULL) || (inp == NULL)) { break; } - if (sctp_strreset_timer(inp, stcb, net)) { + if (sctp_strreset_timer(inp, stcb)) { /* no need to unlock on tcb its gone */ goto out_decr; } From owner-svn-src-head@freebsd.org Thu Mar 19 21:01:18 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 67496270B37; Thu, 19 Mar 2020 21:01:18 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jzpk24Wrz4QM0; Thu, 19 Mar 2020 21:01:18 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 426F718DA2; Thu, 19 Mar 2020 21:01:18 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02JL1IPP078641; Thu, 19 Mar 2020 21:01:18 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02JL1GbV078632; Thu, 19 Mar 2020 21:01:16 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <202003192101.02JL1GbV078632@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Thu, 19 Mar 2020 21:01:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359152 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 359152 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 21:01:18 -0000 Author: tuexen Date: Thu Mar 19 21:01:16 2020 New Revision: 359152 URL: https://svnweb.freebsd.org/changeset/base/359152 Log: Consistently provide arguments for timer start and stop routines. This is another step in cleaning up timer handling. MFC after: 1 week Modified: head/sys/netinet/sctp_asconf.c head/sys/netinet/sctp_asconf.h head/sys/netinet/sctp_indata.c head/sys/netinet/sctp_input.c head/sys/netinet/sctp_output.c head/sys/netinet/sctp_pcb.c head/sys/netinet/sctp_timer.c head/sys/netinet/sctp_usrreq.c head/sys/netinet/sctputil.c Modified: head/sys/netinet/sctp_asconf.c ============================================================================== --- head/sys/netinet/sctp_asconf.c Thu Mar 19 18:55:54 2020 (r359151) +++ head/sys/netinet/sctp_asconf.c Thu Mar 19 21:01:16 2020 (r359152) @@ -939,12 +939,12 @@ sctp_addr_match(struct sctp_paramhdr *ph, struct socka * Cleanup for non-responded/OP ERR'd ASCONF */ void -sctp_asconf_cleanup(struct sctp_tcb *stcb, struct sctp_nets *net) +sctp_asconf_cleanup(struct sctp_tcb *stcb) { /* * clear out any existing asconfs going out */ - sctp_timer_stop(SCTP_TIMER_TYPE_ASCONF, stcb->sctp_ep, stcb, net, + sctp_timer_stop(SCTP_TIMER_TYPE_ASCONF, stcb->sctp_ep, stcb, NULL, SCTP_FROM_SCTP_ASCONF + SCTP_LOC_2); stcb->asoc.asconf_seq_out_acked = stcb->asoc.asconf_seq_out; /* remove the old ASCONF on our outbound queue */ @@ -1725,7 +1725,7 @@ sctp_handle_asconf_ack(struct mbuf *m, int offset, if (serial_num == asoc->asconf_seq_out - 1) { /* stop our timer */ - sctp_timer_stop(SCTP_TIMER_TYPE_ASCONF, stcb->sctp_ep, stcb, net, + sctp_timer_stop(SCTP_TIMER_TYPE_ASCONF, stcb->sctp_ep, stcb, NULL, SCTP_FROM_SCTP_ASCONF + SCTP_LOC_5); } Modified: head/sys/netinet/sctp_asconf.h ============================================================================== --- head/sys/netinet/sctp_asconf.h Thu Mar 19 18:55:54 2020 (r359151) +++ head/sys/netinet/sctp_asconf.h Thu Mar 19 21:01:16 2020 (r359152) @@ -43,7 +43,7 @@ __FBSDID("$FreeBSD$"); /* * function prototypes */ -extern void sctp_asconf_cleanup(struct sctp_tcb *, struct sctp_nets *); +extern void sctp_asconf_cleanup(struct sctp_tcb *); extern struct mbuf *sctp_compose_asconf(struct sctp_tcb *, int *, int); Modified: head/sys/netinet/sctp_indata.c ============================================================================== --- head/sys/netinet/sctp_indata.c Thu Mar 19 18:55:54 2020 (r359151) +++ head/sys/netinet/sctp_indata.c Thu Mar 19 21:01:16 2020 (r359152) @@ -4392,7 +4392,7 @@ again: sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWN, stcb->sctp_ep, stcb, netp); sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, - stcb->sctp_ep, stcb, netp); + stcb->sctp_ep, stcb, NULL); } else if ((SCTP_GET_STATE(stcb) == SCTP_STATE_SHUTDOWN_RECEIVED) && (asoc->stream_queue_cnt == 0)) { struct sctp_nets *netp; @@ -5087,7 +5087,7 @@ hopeless_peer: sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWN, stcb->sctp_ep, stcb, netp); sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, - stcb->sctp_ep, stcb, netp); + stcb->sctp_ep, stcb, NULL); return; } else if ((SCTP_GET_STATE(stcb) == SCTP_STATE_SHUTDOWN_RECEIVED) && (asoc->stream_queue_cnt == 0)) { Modified: head/sys/netinet/sctp_input.c ============================================================================== --- head/sys/netinet/sctp_input.c Thu Mar 19 18:55:54 2020 (r359151) +++ head/sys/netinet/sctp_input.c Thu Mar 19 21:01:16 2020 (r359152) @@ -826,7 +826,7 @@ sctp_handle_abort(struct sctp_abort_chunk *abort, error = 0; } /* stop any receive timers */ - sctp_timer_stop(SCTP_TIMER_TYPE_RECV, stcb->sctp_ep, stcb, net, + sctp_timer_stop(SCTP_TIMER_TYPE_RECV, stcb->sctp_ep, stcb, NULL, SCTP_FROM_SCTP_INPUT + SCTP_LOC_7); /* notify user of the abort and clean up... */ sctp_abort_notification(stcb, 1, error, abort, SCTP_SO_NOT_LOCKED); @@ -1110,13 +1110,12 @@ sctp_handle_shutdown_ack(struct sctp_shutdown_ack_chun } static void -sctp_process_unrecog_chunk(struct sctp_tcb *stcb, uint8_t chunk_type, - struct sctp_nets *net) +sctp_process_unrecog_chunk(struct sctp_tcb *stcb, uint8_t chunk_type) { switch (chunk_type) { case SCTP_ASCONF_ACK: case SCTP_ASCONF: - sctp_asconf_cleanup(stcb, net); + sctp_asconf_cleanup(stcb); break; case SCTP_IFORWARD_CUM_TSN: case SCTP_FORWARD_CUM_TSN: @@ -1294,7 +1293,7 @@ sctp_handle_error(struct sctp_chunkhdr *ch, struct sctp_error_unrecognized_chunk *unrec_chunk; unrec_chunk = (struct sctp_error_unrecognized_chunk *)cause; - sctp_process_unrecog_chunk(stcb, unrec_chunk->ch.chunk_type, net); + sctp_process_unrecog_chunk(stcb, unrec_chunk->ch.chunk_type); } break; case SCTP_CAUSE_UNRECOG_PARAM: @@ -1643,7 +1642,7 @@ sctp_process_cookie_existing(struct mbuf *m, int iphle SCTP_SET_STATE(stcb, SCTP_STATE_OPEN); if (asoc->state & SCTP_STATE_SHUTDOWN_PENDING) { sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, - stcb->sctp_ep, stcb, asoc->primary_destination); + stcb->sctp_ep, stcb, NULL); } SCTP_STAT_INCR_GAUGE32(sctps_currestab); sctp_stop_all_cookie_timers(stcb); @@ -1886,7 +1885,7 @@ sctp_process_cookie_existing(struct mbuf *m, int iphle SCTP_SET_STATE(stcb, SCTP_STATE_OPEN); if (asoc->state & SCTP_STATE_SHUTDOWN_PENDING) { sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, - stcb->sctp_ep, stcb, asoc->primary_destination); + stcb->sctp_ep, stcb, NULL); } sctp_stop_all_cookie_timers(stcb); sctp_toss_old_cookies(stcb, asoc); @@ -1956,7 +1955,7 @@ sctp_process_cookie_existing(struct mbuf *m, int iphle if (asoc->state & SCTP_STATE_SHUTDOWN_PENDING) { SCTP_SET_STATE(stcb, SCTP_STATE_OPEN); sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, - stcb->sctp_ep, stcb, asoc->primary_destination); + stcb->sctp_ep, stcb, NULL); } else if (SCTP_GET_STATE(stcb) != SCTP_STATE_SHUTDOWN_SENT) { /* move to OPEN state, if not in SHUTDOWN_SENT */ @@ -2352,7 +2351,7 @@ sctp_process_cookie_new(struct mbuf *m, int iphlen, in SCTP_SET_STATE(stcb, SCTP_STATE_OPEN); if (asoc->state & SCTP_STATE_SHUTDOWN_PENDING) { sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, - stcb->sctp_ep, stcb, asoc->primary_destination); + stcb->sctp_ep, stcb, NULL); } sctp_stop_all_cookie_timers(stcb); SCTP_STAT_INCR_COUNTER32(sctps_passiveestab); @@ -2980,7 +2979,7 @@ sctp_handle_cookie_ack(struct sctp_cookie_ack_chunk *c sctp_start_net_timers(stcb); if (asoc->state & SCTP_STATE_SHUTDOWN_PENDING) { sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, - stcb->sctp_ep, stcb, asoc->primary_destination); + stcb->sctp_ep, stcb, NULL); } /* update RTO */ @@ -3660,7 +3659,7 @@ sctp_clean_up_stream_reset(struct sctp_tcb *stcb) } asoc->str_reset = NULL; sctp_timer_stop(SCTP_TIMER_TYPE_STRRESET, stcb->sctp_ep, stcb, - chk->whoTo, SCTP_FROM_SCTP_INPUT + SCTP_LOC_28); + NULL, SCTP_FROM_SCTP_INPUT + SCTP_LOC_28); TAILQ_REMOVE(&asoc->control_send_queue, chk, sctp_next); asoc->ctrl_queue_cnt--; if (chk->data) { Modified: head/sys/netinet/sctp_output.c ============================================================================== --- head/sys/netinet/sctp_output.c Thu Mar 19 18:55:54 2020 (r359151) +++ head/sys/netinet/sctp_output.c Thu Mar 19 21:01:16 2020 (r359152) @@ -6735,7 +6735,7 @@ sctp_sendall_iterator(struct sctp_inpcb *inp, struct s sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWN, stcb->sctp_ep, stcb, net); sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, - asoc->primary_destination); + NULL); added_control = 1; do_chunk_output = 0; } @@ -6775,7 +6775,7 @@ sctp_sendall_iterator(struct sctp_inpcb *inp, struct s goto no_chunk_output; } sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, - asoc->primary_destination); + NULL); } } @@ -8447,7 +8447,7 @@ again_one_more_time: /* turn off the timer */ if (SCTP_OS_TIMER_PENDING(&stcb->asoc.dack_timer.timer)) { sctp_timer_stop(SCTP_TIMER_TYPE_RECV, - inp, stcb, net, + inp, stcb, NULL, SCTP_FROM_SCTP_OUTPUT + SCTP_LOC_1); } } @@ -13577,7 +13577,7 @@ dataless_eof: sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWN, stcb->sctp_ep, stcb, netp); sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, - asoc->primary_destination); + NULL); } } else { /*- @@ -13629,7 +13629,7 @@ dataless_eof: goto out; } sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, - asoc->primary_destination); + NULL); sctp_feature_off(inp, SCTP_PCB_FLAGS_NODELAY); } } Modified: head/sys/netinet/sctp_pcb.c ============================================================================== --- head/sys/netinet/sctp_pcb.c Thu Mar 19 18:55:54 2020 (r359151) +++ head/sys/netinet/sctp_pcb.c Thu Mar 19 21:01:16 2020 (r359152) @@ -3444,15 +3444,13 @@ sctp_inpcb_free(struct sctp_inpcb *inp, int immediate, sctp_send_shutdown(asoc, netp); sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWN, asoc->sctp_ep, asoc, netp); - sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, asoc->sctp_ep, asoc, - asoc->asoc.primary_destination); + sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, asoc->sctp_ep, asoc, NULL); sctp_chunk_output(inp, asoc, SCTP_OUTPUT_FROM_SHUT_TMR, SCTP_SO_LOCKED); } } else { /* mark into shutdown pending */ SCTP_ADD_SUBSTATE(asoc, SCTP_STATE_SHUTDOWN_PENDING); - sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, asoc->sctp_ep, asoc, - asoc->asoc.primary_destination); + sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, asoc->sctp_ep, asoc, NULL); if ((*asoc->asoc.ss_functions.sctp_ss_is_user_msgs_incomplete) (asoc, &asoc->asoc)) { SCTP_ADD_SUBSTATE(asoc, SCTP_STATE_PARTIAL_MSG_LEFT); } Modified: head/sys/netinet/sctp_timer.c ============================================================================== --- head/sys/netinet/sctp_timer.c Thu Mar 19 18:55:54 2020 (r359151) +++ head/sys/netinet/sctp_timer.c Thu Mar 19 21:01:16 2020 (r359152) @@ -1202,7 +1202,7 @@ sctp_asconf_timer(struct sctp_inpcb *inp, struct sctp_ * and cleanup. */ SCTPDBG(SCTP_DEBUG_TIMER1, "asconf_timer: Peer has not responded to our repeated ASCONFs\n"); - sctp_asconf_cleanup(stcb, net); + sctp_asconf_cleanup(stcb); return (0); } /* Modified: head/sys/netinet/sctp_usrreq.c ============================================================================== --- head/sys/netinet/sctp_usrreq.c Thu Mar 19 18:55:54 2020 (r359151) +++ head/sys/netinet/sctp_usrreq.c Thu Mar 19 21:01:16 2020 (r359152) @@ -768,7 +768,7 @@ sctp_disconnect(struct socket *so) sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWN, stcb->sctp_ep, stcb, netp); sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, - stcb->sctp_ep, stcb, netp); + stcb->sctp_ep, stcb, NULL); sctp_chunk_output(stcb->sctp_ep, stcb, SCTP_OUTPUT_FROM_T3, SCTP_SO_LOCKED); } } else { @@ -791,8 +791,7 @@ sctp_disconnect(struct socket *so) } SCTP_ADD_SUBSTATE(stcb, SCTP_STATE_SHUTDOWN_PENDING); - sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, - netp); + sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, NULL); if ((*asoc->ss_functions.sctp_ss_is_user_msgs_incomplete) (stcb, asoc)) { SCTP_ADD_SUBSTATE(stcb, SCTP_STATE_PARTIAL_MSG_LEFT); } @@ -996,7 +995,7 @@ sctp_shutdown(struct socket *so) return (0); } } - sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, netp); + sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, NULL); /* * XXX: Why do this in the case where we have still data * queued? Modified: head/sys/netinet/sctputil.c ============================================================================== --- head/sys/netinet/sctputil.c Thu Mar 19 18:55:54 2020 (r359151) +++ head/sys/netinet/sctputil.c Thu Mar 19 21:01:16 2020 (r359152) @@ -1875,7 +1875,7 @@ sctp_timeout_handler(void *t) inp->sctp_ep.secret_key[secret][i] = sctp_select_initial_TSN(&inp->sctp_ep); } - sctp_timer_start(SCTP_TIMER_TYPE_NEWCOOKIE, inp, stcb, net); + sctp_timer_start(SCTP_TIMER_TYPE_NEWCOOKIE, inp, NULL, NULL); } did_output = 0; break; From owner-svn-src-head@freebsd.org Thu Mar 19 21:05:14 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 1B184270D6C; Thu, 19 Mar 2020 21:05:14 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48jzvF6ZRnz4S1s; Thu, 19 Mar 2020 21:05:13 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C267A18F34; Thu, 19 Mar 2020 21:05:13 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02JL5D7T080307; Thu, 19 Mar 2020 21:05:13 GMT (envelope-from tsoome@FreeBSD.org) Received: (from tsoome@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02JL5Cpn080299; Thu, 19 Mar 2020 21:05:12 GMT (envelope-from tsoome@FreeBSD.org) Message-Id: <202003192105.02JL5Cpn080299@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tsoome set sender to tsoome@FreeBSD.org using -f From: Toomas Soome Date: Thu, 19 Mar 2020 21:05:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359153 - in head/stand: . common efi/gptboot i386/gptboot i386/gptzfsboot libsa uboot/lib X-SVN-Group: head X-SVN-Commit-Author: tsoome X-SVN-Commit-Paths: in head/stand: . common efi/gptboot i386/gptboot i386/gptzfsboot libsa uboot/lib X-SVN-Commit-Revision: 359153 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 21:05:14 -0000 Author: tsoome Date: Thu Mar 19 21:05:11 2020 New Revision: 359153 URL: https://svnweb.freebsd.org/changeset/base/359153 Log: loader: remove libsa/crc32.c and use version from zlib we have crc32(const void *, size_t) in libsa. Unfortunately zlib has crc32(long, const unigned char *, unsigned) and we have conflict. Since we do build libsa with zlib, we can use zlib version instead. Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D24068 Deleted: head/stand/libsa/crc32.c head/stand/libsa/crc32.h Modified: head/stand/common/part.c head/stand/efi/gptboot/Makefile head/stand/i386/gptboot/Makefile head/stand/i386/gptzfsboot/Makefile head/stand/libsa/gpt.c head/stand/loader.mk head/stand/uboot/lib/Makefile head/stand/uboot/lib/glue.c Modified: head/stand/common/part.c ============================================================================== --- head/stand/common/part.c Thu Mar 19 21:01:16 2020 (r359152) +++ head/stand/common/part.c Thu Mar 19 21:05:11 2020 (r359153) @@ -39,7 +39,7 @@ __FBSDID("$FreeBSD$"); #include -#include +#include #include #include @@ -164,8 +164,8 @@ gpt_checkhdr(struct gpt_hdr *hdr, uint64_t lba_self, u return (NULL); } crc = le32toh(hdr->hdr_crc_self); - hdr->hdr_crc_self = 0; - if (crc32(hdr, sz) != crc) { + hdr->hdr_crc_self = crc32(0, Z_NULL, 0); + if (crc32(hdr->hdr_crc_self, (const Bytef *)hdr, sz) != crc) { DPRINTF("GPT header's CRC doesn't match"); return (NULL); } @@ -213,7 +213,7 @@ gpt_checktbl(const struct gpt_hdr *hdr, uint8_t *tbl, cnt = hdr->hdr_entries; /* Check CRC only when buffer size is enough for table. */ if (hdr->hdr_crc_table != - crc32(tbl, hdr->hdr_entries * hdr->hdr_entsz)) { + crc32(0, tbl, hdr->hdr_entries * hdr->hdr_entsz)) { DPRINTF("GPT table's CRC doesn't match"); return (-1); } Modified: head/stand/efi/gptboot/Makefile ============================================================================== --- head/stand/efi/gptboot/Makefile Thu Mar 19 21:01:16 2020 (r359152) +++ head/stand/efi/gptboot/Makefile Thu Mar 19 21:05:11 2020 (r359153) @@ -10,6 +10,7 @@ BOOT1?= gptboot CFLAGS+= -I${SRCTOP}/stand/efi/boot1 CFLAGS+= -I${.CURDIR} CFLAGS+= -DBOOTPROG=\"gptboot.efi\" +CFLAGS+= -DHAVE_MEMCPY -I${SRCTOP}/sys/contrib/zlib SRCS+= gpt.c CWARNFLAGS.gpt.c+= -Wno-sign-compare -Wno-cast-align WARNS=6 Modified: head/stand/i386/gptboot/Makefile ============================================================================== --- head/stand/i386/gptboot/Makefile Thu Mar 19 21:01:16 2020 (r359152) +++ head/stand/i386/gptboot/Makefile Thu Mar 19 21:05:11 2020 (r359153) @@ -30,6 +30,7 @@ CFLAGS+=-DBOOTPROG=\"gptboot\" \ -I${LDRSRC} \ -I${BOOTSRC}/i386/common \ -I${BOOTSRC}/i386/boot2 \ + -DHAVE_MEMCPY -I${SRCTOP}/sys/contrib/zlib \ -Wall -Waggregate-return -Wbad-function-cast -Wno-cast-align \ -Wmissing-declarations -Wmissing-prototypes -Wnested-externs \ -Wpointer-arith -Wshadow -Wstrict-prototypes -Wwrite-strings \ Modified: head/stand/i386/gptzfsboot/Makefile ============================================================================== --- head/stand/i386/gptzfsboot/Makefile Thu Mar 19 21:01:16 2020 (r359152) +++ head/stand/i386/gptzfsboot/Makefile Thu Mar 19 21:05:11 2020 (r359153) @@ -32,6 +32,7 @@ CFLAGS+=-DBOOTPROG=\"gptzfsboot\" \ -I${SYSDIR}/cddl/contrib/opensolaris/common/lz4 \ -I${BOOTSRC}/i386/btx/lib \ -I${BOOTSRC}/i386/boot2 \ + -DHAVE_MEMCPY -I${SRCTOP}/sys/contrib/zlib \ -Wall -Waggregate-return -Wbad-function-cast \ -Wmissing-declarations -Wmissing-prototypes -Wnested-externs \ -Wpointer-arith -Wshadow -Wstrict-prototypes -Wwrite-strings \ Modified: head/stand/libsa/gpt.c ============================================================================== --- head/stand/libsa/gpt.c Thu Mar 19 21:01:16 2020 (r359152) +++ head/stand/libsa/gpt.c Thu Mar 19 21:05:11 2020 (r359153) @@ -35,7 +35,7 @@ __FBSDID("$FreeBSD$"); #endif #include "stand.h" -#include "crc32.h" +#include "zlib.h" #include "drv.h" #include "gpt.h" @@ -76,9 +76,12 @@ gptupdate(const char *which, struct dsk *dskp, struct BOOTPROG, which); return; } - hdr->hdr_crc_table = crc32(table, hdr->hdr_entries * hdr->hdr_entsz); - hdr->hdr_crc_self = 0; - hdr->hdr_crc_self = crc32(hdr, hdr->hdr_size); + hdr->hdr_crc_table = crc32(0, Z_NULL, 0); + hdr->hdr_crc_table = crc32(hdr->hdr_crc_table, (const Bytef *)table, + hdr->hdr_entries * hdr->hdr_entsz); + hdr->hdr_crc_self = crc32(0, Z_NULL, 0);; + hdr->hdr_crc_self = crc32(hdr->hdr_crc_self, (const Bytef *)hdr, + hdr->hdr_size); bzero(secbuf, DEV_BSIZE); bcopy(hdr, secbuf, hdr->hdr_size); if (drvwrite(dskp, secbuf, hdr->hdr_lba_self, 1)) { @@ -198,8 +201,9 @@ gptread_hdr(const char *which, struct dsk *dskp, struc return (-1); } crc = hdr->hdr_crc_self; - hdr->hdr_crc_self = 0; - if (crc32(hdr, hdr->hdr_size) != crc) { + hdr->hdr_crc_self = crc32(0, Z_NULL, 0); + if (crc32(hdr->hdr_crc_self, (const Bytef *)hdr, hdr->hdr_size) != + crc) { printf("%s: %s GPT header checksum mismatch\n", BOOTPROG, which); return (-1); @@ -265,9 +269,12 @@ gptbootconv(const char *which, struct dsk *dskp, struc } if (!table_updated) return; - hdr->hdr_crc_table = crc32(table, hdr->hdr_entries * hdr->hdr_entsz); - hdr->hdr_crc_self = 0; - hdr->hdr_crc_self = crc32(hdr, hdr->hdr_size); + hdr->hdr_crc_table = crc32(0, Z_NULL, 0); + hdr->hdr_crc_table = crc32(hdr->hdr_crc_table, (const Bytef *)table, + hdr->hdr_entries * hdr->hdr_entsz); + hdr->hdr_crc_self = crc32(0, Z_NULL, 0); + hdr->hdr_crc_self = crc32(hdr->hdr_crc_self, (const Bytef *)hdr, + hdr->hdr_size); bzero(secbuf, DEV_BSIZE); bcopy(hdr, secbuf, hdr->hdr_size); if (drvwrite(dskp, secbuf, hdr->hdr_lba_self, 1)) @@ -305,7 +312,8 @@ gptread_table(const char *which, struct dsk *dskp, str break; slba++; } - if (crc32(table, nent * hdr->hdr_entsz) != hdr->hdr_crc_table) { + if (crc32(0, (const Bytef *)table, nent * hdr->hdr_entsz) != + hdr->hdr_crc_table) { printf("%s: %s GPT table checksum mismatch\n", BOOTPROG, which); return (-1); } Modified: head/stand/loader.mk ============================================================================== --- head/stand/loader.mk Thu Mar 19 21:01:16 2020 (r359152) +++ head/stand/loader.mk Thu Mar 19 21:05:11 2020 (r359153) @@ -28,6 +28,7 @@ SRCS+= metadata.c .endif .if ${LOADER_DISK_SUPPORT:Uyes} == "yes" +CFLAGS.part.c+= -DHAVE_MEMCPY -I${SRCTOP}/sys/contrib/zlib SRCS+= disk.c part.c vdisk.c .endif Modified: head/stand/uboot/lib/Makefile ============================================================================== --- head/stand/uboot/lib/Makefile Thu Mar 19 21:01:16 2020 (r359152) +++ head/stand/uboot/lib/Makefile Thu Mar 19 21:05:11 2020 (r359153) @@ -10,6 +10,8 @@ WARNS?= 2 SRCS= console.c copy.c devicename.c elf_freebsd.c glue.c SRCS+= module.c net.c reboot.c time.c +CFLAGS.glue.c+= -DHAVE_MEMCPY -I${SRCTOP}/sys/contrib/zlib + .if ${LOADER_DISK_SUPPORT:Uyes} == "yes" SRCS+= disk.c .endif Modified: head/stand/uboot/lib/glue.c ============================================================================== --- head/stand/uboot/lib/glue.c Thu Mar 19 21:01:16 2020 (r359152) +++ head/stand/uboot/lib/glue.c Thu Mar 19 21:05:11 2020 (r359153) @@ -29,7 +29,7 @@ __FBSDID("$FreeBSD$"); #include -#include +#include #include #include "api_public.h" #include "glue.h" @@ -57,9 +57,9 @@ valid_sig(struct api_signature *sig) * produced */ s = *sig; - s.checksum = 0; + s.checksum = crc32(0, Z_NULL, 0); - checksum = crc32((void *)&s, sizeof(struct api_signature)); + checksum = crc32(s.checksum, (void *)&s, sizeof(struct api_signature)); if (checksum != sig->checksum) return (0); From owner-svn-src-head@freebsd.org Thu Mar 19 21:38:53 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 6AC67271548; Thu, 19 Mar 2020 21:38:53 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48k0f50Qxqz4m65; Thu, 19 Mar 2020 21:38:52 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9D6281949E; Thu, 19 Mar 2020 21:38:52 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02JLcqGE098556; Thu, 19 Mar 2020 21:38:52 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02JLcqsu098555; Thu, 19 Mar 2020 21:38:52 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202003192138.02JLcqsu098555@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Thu, 19 Mar 2020 21:38:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359154 - head/sys/netinet6 X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: head/sys/netinet6 X-SVN-Commit-Revision: 359154 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 21:38:53 -0000 Author: markj Date: Thu Mar 19 21:38:52 2020 New Revision: 359154 URL: https://svnweb.freebsd.org/changeset/base/359154 Log: Fix synchronization in the IPV6_2292PKTOPTIONS set handler. The inpcb needs to be locked when we update output packet options. Otherwise it is possible for the IPV6_2292PKTOPTIONS handler to free packet option structures while another thread is reading or updating them. Note that the option handler is still kind of broken. For instance it frees all options before performing privilege checks for individual options. However, this can be fixed separately. Reported by: syzbot+52eb0fd4ddc119787f9d@syzkaller.appspotmail.com Reviewed by: bz, tuexen MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D24125 Modified: head/sys/netinet6/ip6_output.c Modified: head/sys/netinet6/ip6_output.c ============================================================================== --- head/sys/netinet6/ip6_output.c Thu Mar 19 21:05:11 2020 (r359153) +++ head/sys/netinet6/ip6_output.c Thu Mar 19 21:38:52 2020 (r359154) @@ -1694,8 +1694,10 @@ ip6_ctloutput(struct socket *so, struct sockopt *sopt) error = soopt_mcopyin(sopt, m); /* XXX */ if (error != 0) break; - error = ip6_pcbopts(&inp->in6p_outputopts, - m, so, sopt); + INP_WLOCK(inp); + error = ip6_pcbopts(&inp->in6p_outputopts, m, + so, sopt); + INP_WUNLOCK(inp); m_freem(m); /* XXX */ break; } @@ -2458,8 +2460,11 @@ ip6_pcbopts(struct ip6_pktopts **pktopt, struct mbuf * printf("ip6_pcbopts: all specified options are cleared.\n"); #endif ip6_clearpktopts(opt, -1); - } else - opt = malloc(sizeof(*opt), M_IP6OPT, M_WAITOK); + } else { + opt = malloc(sizeof(*opt), M_IP6OPT, M_NOWAIT); + if (opt == NULL) + return (ENOMEM); + } *pktopt = NULL; if (!m || m->m_len == 0) { From owner-svn-src-head@freebsd.org Thu Mar 19 23:07:55 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 34276273463; Thu, 19 Mar 2020 23:07:55 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48k2cp2W6Nz4R8Z; Thu, 19 Mar 2020 23:07:54 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9D8D51A50E; Thu, 19 Mar 2020 23:07:53 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02JN7rgb054149; Thu, 19 Mar 2020 23:07:53 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02JN7rHn054148; Thu, 19 Mar 2020 23:07:53 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <202003192307.02JN7rHn054148@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Thu, 19 Mar 2020 23:07:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359156 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 359156 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 23:07:55 -0000 Author: tuexen Date: Thu Mar 19 23:07:52 2020 New Revision: 359156 URL: https://svnweb.freebsd.org/changeset/base/359156 Log: A a missing NET_EPOCH_ENTER/NET_EPOCH_EXIT pair. This was affecting implicit connection setups via sendmsg(). Reported by: syzbot+febbe3383a0e9b700c1b@syzkaller.appspotmail.com Reported by: syzbot+dca98631455d790223ca@syzkaller.appspotmail.com Reported by: syzbot+5a71a7760d6bcf11b8cd@syzkaller.appspotmail.com Reported by: syzbot+da64217e140444c49f00@syzkaller.appspotmail.com Modified: head/sys/netinet/sctp_output.c Modified: head/sys/netinet/sctp_output.c ============================================================================== --- head/sys/netinet/sctp_output.c Thu Mar 19 22:33:24 2020 (r359155) +++ head/sys/netinet/sctp_output.c Thu Mar 19 23:07:52 2020 (r359156) @@ -13647,7 +13647,9 @@ skip_out_eof: /* a collision took us forward? */ queue_only = 0; } else { + NET_EPOCH_ENTER(et); sctp_send_initiate(inp, stcb, SCTP_SO_LOCKED); + NET_EPOCH_EXIT(et); SCTP_SET_STATE(stcb, SCTP_STATE_COOKIE_WAIT); queue_only = 1; } From owner-svn-src-head@freebsd.org Fri Mar 20 03:15:24 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 439DC258A13; Fri, 20 Mar 2020 03:15:24 +0000 (UTC) (envelope-from sevan@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48k86N0qQmz48Ff; Fri, 20 Mar 2020 03:15:24 +0000 (UTC) (envelope-from sevan@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 0EEE81D349; Fri, 20 Mar 2020 03:15:24 +0000 (UTC) (envelope-from sevan@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02K3FNo6005087; Fri, 20 Mar 2020 03:15:23 GMT (envelope-from sevan@FreeBSD.org) Received: (from sevan@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02K3FNE8005086; Fri, 20 Mar 2020 03:15:23 GMT (envelope-from sevan@FreeBSD.org) Message-Id: <202003200315.02K3FNE8005086@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sevan set sender to sevan@FreeBSD.org using -f From: Sevan Janiyan Date: Fri, 20 Mar 2020 03:15:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359157 - head/share/misc X-SVN-Group: head X-SVN-Commit-Author: sevan X-SVN-Commit-Paths: head/share/misc X-SVN-Commit-Revision: 359157 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 03:15:24 -0000 Author: sevan (doc committer) Date: Fri Mar 20 03:15:23 2020 New Revision: 359157 URL: https://svnweb.freebsd.org/changeset/base/359157 Log: Add DragonFly BSD 5.8 & 5.63 Modified: head/share/misc/bsd-family-tree Modified: head/share/misc/bsd-family-tree ============================================================================== --- head/share/misc/bsd-family-tree Thu Mar 19 23:07:52 2020 (r359156) +++ head/share/misc/bsd-family-tree Fri Mar 20 03:15:23 2020 (r359157) @@ -408,6 +408,10 @@ FreeBSD 5.2 | | | | | | *--NetBSD | | | v | | 9.0 | | | | | | | + | | | | DragonFly 5.8 + | | | | | + | | | | DragonFly 5.6.3 + | | | | | FreeBSD 13 -current | NetBSD -current OpenBSD -current DragonFly -current | | | | | v v v v v @@ -800,6 +804,8 @@ macOS 10.15 2019-10-07 [APL] macOS 10.15.1 2019-10-29 [APL] (security/critical release) FreeBSD 12.1 2019-11-04 [FBD] NetBSD 9.0 2020-02-14 [NBD] +DragonFly 5.8 2020-03-03 [DFB] +DragonFly 5.6.3 2020-03-11 [DFB] Bibliography ------------------------ From owner-svn-src-head@freebsd.org Fri Mar 20 04:13:40 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 99C5C259EE6; Fri, 20 Mar 2020 04:13:40 +0000 (UTC) (envelope-from gavin@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48k9Pc3Sfvz4G47; Fri, 20 Mar 2020 04:13:40 +0000 (UTC) (envelope-from gavin@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 71B281DEF1; Fri, 20 Mar 2020 04:13:40 +0000 (UTC) (envelope-from gavin@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02K4Demg041603; Fri, 20 Mar 2020 04:13:40 GMT (envelope-from gavin@FreeBSD.org) Received: (from gavin@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02K4DegN041601; Fri, 20 Mar 2020 04:13:40 GMT (envelope-from gavin@FreeBSD.org) Message-Id: <202003200413.02K4DegN041601@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gavin set sender to gavin@FreeBSD.org using -f From: Gavin Atkinson Date: Fri, 20 Mar 2020 04:13:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359158 - in head/sys/dev: rtwn/usb usb X-SVN-Group: head X-SVN-Commit-Author: gavin X-SVN-Commit-Paths: in head/sys/dev: rtwn/usb usb X-SVN-Commit-Revision: 359158 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 04:13:40 -0000 Author: gavin Date: Fri Mar 20 04:13:39 2020 New Revision: 359158 URL: https://svnweb.freebsd.org/changeset/base/359158 Log: Add new USB device ID for Elecom 802.11ac USB device. MFC after: 2 weeks Modified: head/sys/dev/rtwn/usb/rtwn_usb_attach.h head/sys/dev/usb/usbdevs Modified: head/sys/dev/rtwn/usb/rtwn_usb_attach.h ============================================================================== --- head/sys/dev/rtwn/usb/rtwn_usb_attach.h Fri Mar 20 03:15:23 2020 (r359157) +++ head/sys/dev/rtwn/usb/rtwn_usb_attach.h Fri Mar 20 04:13:39 2020 (r359158) @@ -154,6 +154,7 @@ static const STRUCT_USB_HOST_ID rtwn_devs[] = { RTWN_RTL8821AU_DEV(DLINK, DWA172A1), RTWN_RTL8821AU_DEV(EDIMAX, EW7811UTC_1), RTWN_RTL8821AU_DEV(EDIMAX, EW7811UTC_2), + RTWN_RTL8821AU_DEV(ELECOM, WDB433SU2M2), RTWN_RTL8821AU_DEV(HAWKING, HD65U), RTWN_RTL8821AU_DEV(MELCO, WIU2433DM), RTWN_RTL8821AU_DEV(NETGEAR, A6100), Modified: head/sys/dev/usb/usbdevs ============================================================================== --- head/sys/dev/usb/usbdevs Fri Mar 20 03:15:23 2020 (r359157) +++ head/sys/dev/usb/usbdevs Fri Mar 20 04:13:39 2020 (r359158) @@ -1857,6 +1857,7 @@ product ELECOM LDUSBTX1 0x4002 LD-USB/TX product ELECOM LDUSBLTX 0x4005 LD-USBL/TX product ELECOM WDC150SU2M 0x4008 WDC-150SU2M product ELECOM LDUSBTX2 0x400b LD-USB/TX +product ELECOM WDB433SU2M2 0x400f WDB-433SU2M2 product ELECOM LDUSB20 0x4010 LD-USB20 product ELECOM UCSGT 0x5003 UC-SGT product ELECOM UCSGT0 0x5004 UC-SGT From owner-svn-src-head@freebsd.org Fri Mar 20 05:12:17 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 39DAE25AE5B; Fri, 20 Mar 2020 05:12:17 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kBjF0gzgz46mm; Fri, 20 Mar 2020 05:12:17 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1299F1E993; Fri, 20 Mar 2020 05:12:17 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02K5CG9s077284; Fri, 20 Mar 2020 05:12:16 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02K5CGQF077280; Fri, 20 Mar 2020 05:12:16 GMT (envelope-from np@FreeBSD.org) Message-Id: <202003200512.02K5CGQF077280@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Fri, 20 Mar 2020 05:12:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359159 - head/sys/dev/cxgbe X-SVN-Group: head X-SVN-Commit-Author: np X-SVN-Commit-Paths: head/sys/dev/cxgbe X-SVN-Commit-Revision: 359159 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 05:12:17 -0000 Author: np Date: Fri Mar 20 05:12:16 2020 New Revision: 359159 URL: https://svnweb.freebsd.org/changeset/base/359159 Log: cxgbe(4): Split sge_nm_rxq into three cachelines. This reduces the lines bouncing around between the driver rx ithread and the netmap rxsync thread. There is no net change in the size of the struct (it continues to waste a lot of space). This kind of split was originally proposed in D17869 by Marc De La Gueronniere @ Verisign, Inc. MFC after: 1 week Sponsored by: Chelsio Communications Modified: head/sys/dev/cxgbe/adapter.h head/sys/dev/cxgbe/t4_netmap.c head/sys/dev/cxgbe/t4_sge.c Modified: head/sys/dev/cxgbe/adapter.h ============================================================================== --- head/sys/dev/cxgbe/adapter.h Fri Mar 20 04:13:39 2020 (r359158) +++ head/sys/dev/cxgbe/adapter.h Fri Mar 20 05:12:16 2020 (r359159) @@ -685,7 +685,9 @@ struct sge_wrq { #define INVALID_NM_RXQ_CNTXT_ID ((uint16_t)(-1)) struct sge_nm_rxq { - volatile int nm_state; /* NM_OFF, NM_ON, or NM_BUSY */ + /* Items used by the driver rx ithread are in this cacheline. */ + volatile int nm_state __aligned(CACHE_LINE_SIZE); /* NM_OFF, NM_ON, or NM_BUSY */ + u_int nid; /* netmap ring # for this queue */ struct vi_info *vi; struct iq_desc *iq_desc; @@ -694,20 +696,23 @@ struct sge_nm_rxq { uint16_t iq_cidx; uint16_t iq_sidx; uint8_t iq_gen; + uint32_t fl_sidx; - __be64 *fl_desc; + /* Items used by netmap rxsync are in this cacheline. */ + __be64 *fl_desc __aligned(CACHE_LINE_SIZE); uint16_t fl_cntxt_id; - uint32_t fl_cidx; uint32_t fl_pidx; - uint32_t fl_sidx; + uint32_t fl_sidx2; /* copy of fl_sidx */ uint32_t fl_db_val; + u_int fl_db_saved; u_int fl_hwidx:4; - u_int fl_db_saved; - u_int nid; /* netmap ring # for this queue */ + /* + * fl_cidx is used by both the ithread and rxsync, the rest are not used + * in the rx fast path. + */ + uint32_t fl_cidx __aligned(CACHE_LINE_SIZE); - /* infrequently used items after this */ - bus_dma_tag_t iq_desc_tag; bus_dmamap_t iq_desc_map; bus_addr_t iq_ba; @@ -716,7 +721,7 @@ struct sge_nm_rxq { bus_dma_tag_t fl_desc_tag; bus_dmamap_t fl_desc_map; bus_addr_t fl_ba; -} __aligned(CACHE_LINE_SIZE); +}; #define INVALID_NM_TXQ_CNTXT_ID ((u_int)(-1)) struct sge_nm_txq { Modified: head/sys/dev/cxgbe/t4_netmap.c ============================================================================== --- head/sys/dev/cxgbe/t4_netmap.c Fri Mar 20 04:13:39 2020 (r359158) +++ head/sys/dev/cxgbe/t4_netmap.c Fri Mar 20 05:12:16 2020 (r359159) @@ -921,7 +921,7 @@ cxgbe_netmap_rxsync(struct netmap_kring *kring, int fl MPASS((n & 7) == 0); IDXINCR(kring->nr_hwcur, n, kring->nkr_num_slots); - IDXINCR(nm_rxq->fl_pidx, n, nm_rxq->fl_sidx); + IDXINCR(nm_rxq->fl_pidx, n, nm_rxq->fl_sidx2); while (n > 0) { for (i = 0; i < 8; i++, fl_pidx++, slot++) { @@ -929,10 +929,10 @@ cxgbe_netmap_rxsync(struct netmap_kring *kring, int fl MPASS(ba != 0); nm_rxq->fl_desc[fl_pidx] = htobe64(ba | hwidx); slot->flags &= ~NS_BUF_CHANGED; - MPASS(fl_pidx <= nm_rxq->fl_sidx); + MPASS(fl_pidx <= nm_rxq->fl_sidx2); } n -= 8; - if (fl_pidx == nm_rxq->fl_sidx) { + if (fl_pidx == nm_rxq->fl_sidx2) { fl_pidx = 0; slot = &ring->slot[0]; } Modified: head/sys/dev/cxgbe/t4_sge.c ============================================================================== --- head/sys/dev/cxgbe/t4_sge.c Fri Mar 20 04:13:39 2020 (r359158) +++ head/sys/dev/cxgbe/t4_sge.c Fri Mar 20 05:12:16 2020 (r359159) @@ -3655,6 +3655,7 @@ alloc_nm_rxq(struct vi_info *vi, struct sge_nm_rxq *nm nm_rxq->iq_gen = F_RSPD_GEN; nm_rxq->fl_pidx = nm_rxq->fl_cidx = 0; nm_rxq->fl_sidx = na->num_rx_desc; + nm_rxq->fl_sidx2 = nm_rxq->fl_sidx; /* copy for rxsync cacheline */ nm_rxq->intr_idx = intr_idx; nm_rxq->iq_cntxt_id = INVALID_NM_RXQ_CNTXT_ID; From owner-svn-src-head@freebsd.org Fri Mar 20 11:29:15 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 778F026378B for ; Fri, 20 Mar 2020 11:29:15 +0000 (UTC) (envelope-from junchoon@dec.sakura.ne.jp) Received: from dec.sakura.ne.jp (dec.sakura.ne.jp [210.188.226.8]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48kM471BVYz4PgK for ; Fri, 20 Mar 2020 11:29:10 +0000 (UTC) (envelope-from junchoon@dec.sakura.ne.jp) Received: from kalamity.joker.local (124-18-96-116.dz.commufa.jp [124.18.96.116]) (authenticated bits=0) by dec.sakura.ne.jp (8.15.2/8.15.2/[SAKURA-WEB]/20080708) with ESMTPA id 02KBT6GW023696; Fri, 20 Mar 2020 20:29:06 +0900 (JST) (envelope-from junchoon@dec.sakura.ne.jp) Date: Fri, 20 Mar 2020 20:29:06 +0900 From: Tomoaki AOKI To: Toomas Soome Cc: Ruslan Garipov , svn-src-head@freebsd.org Subject: Re: svn commit: r358989 - in head/stand/efi: libefi loader loader/arch/arm loader/arch/arm64 Message-Id: <20200320202906.8fcd15f65de67d54d31c5547@dec.sakura.ne.jp> In-Reply-To: References: <20200316001745.07df62f72d647b924b657d86@dec.sakura.ne.jp> <746EE981-536F-49AD-9B76-F9F103ECB1F9@me.com> <20200317211614.bbe1b18a32d7863941fffbe8@dec.sakura.ne.jp> <55b1f91b-6157-bfee-cd74-124ed50bc663@gmail.com> <944c641f-b570-1420-6b63-96374217d795@gmail.com> <4ABF87AE-948F-43A8-940A-744FC2F4DE4D@me.com> <20200319213329.f354314a9a72e1419d76d2ba@dec.sakura.ne.jp> Reply-To: junchoon@dec.sakura.ne.jp Organization: Junchoon corps X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.32; amd64-portbld-freebsd12.1) Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 48kM471BVYz4PgK X-Spamd-Bar: +++++ Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=none (mx1.freebsd.org: domain of junchoon@dec.sakura.ne.jp has no SPF policy when checking 210.188.226.8) smtp.mailfrom=junchoon@dec.sakura.ne.jp X-Spamd-Result: default: False [5.18 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; HAS_REPLYTO(0.00)[junchoon@dec.sakura.ne.jp]; TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; REPLYTO_ADDR_EQ_FROM(0.00)[]; HAS_ORG_HEADER(0.00)[]; FREEMAIL_TO(0.00)[me.com]; RECEIVED_SPAMHAUS_PBL(0.00)[116.96.18.124.khpj7ygk5idzvmvt5x4ziurxhy.zen.dq.spamhaus.net : 127.0.0.10]; RCVD_TLS_LAST(0.00)[]; R_DKIM_NA(0.00)[]; ASN(0.00)[asn:9370, ipnet:210.188.224.0/19, country:JP]; MIME_TRACE(0.00)[0:+]; MID_RHS_MATCH_FROM(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[sakura.ne.jp]; AUTH_NA(1.00)[]; NEURAL_SPAM_MEDIUM(1.00)[0.998,0]; TO_MATCH_ENVRCPT_SOME(0.00)[]; NEURAL_SPAM_LONG(1.00)[1.000,0]; IP_SCORE(1.78)[ipnet: 210.188.224.0/19(4.95), asn: 9370(3.93), country: JP(0.04)]; R_SPF_NA(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; FREEMAIL_CC(0.00)[gmail.com] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 11:29:15 -0000 On Thu, 19 Mar 2020 14:55:19 +0200 Toomas Soome wrote: > > > > On 19. Mar 2020, at 14:33, Tomoaki AOKI wrote: > > > > On Thu, 19 Mar 2020 00:28:59 +0200 > > Toomas Soome > wrote: > > > >> > >> > >>> On 18. Mar 2020, at 20:41, Ruslan Garipov wrote: > >>> > >>> On 3/18/2020 10:29 PM, Toomas Soome via svn-src-head wrote: > >>>> > >>>> > >>>>> On 18. Mar 2020, at 18:40, Ruslan Garipov wrote: > >>>>> > >>>>> On 3/17/2020 5:16 PM, Tomoaki AOKI wrote: > >>>>>> Hi! Thanks for your respond. > >>>>>> > >>>>>> Unfortunately, no. > >>>>>> I'm running on ThinkPad P52, which has no com connector installed. > >>>>>> No USB serial interface connected. > >>>>>> > >>>>>> `efi-show -g global -v ConOut` on loader prompt shows > >>>>>> > >>>>>> global NV,BS,RS ConOut = > >>>>>> PciRoot(0,0)/Pci((0x1,oxo)/Pci(0x0,0x0)/AcpiAdr(0x80010100) > >>>>>> > >>>>>> Moreover, my previous idea didn't help. > >>>>>> > >>>>>> Neither > >>>>>> console="vidconsole" > >>>>>> console="eficonsole" > >>>>>> console="efi_console" > >>>>>> nor > >>>>>> console="efi" > >>>>>> in /boot/loader.conf works. > >>>>>> > >>>>>> Defining / undefining TERM_EMU on build are untested. > >>>>>> > >>>>>> Is there any setting for /boot/loader.conf to control the behavior? > >>>>>> > >>>>>> > >>>>>> Regards. > >>>>>> > >>>>>> > >>>>>> On Mon, 16 Mar 2020 08:26:56 +0200 > >>>>>> Toomas Soome wrote: > >>>>>> > >>>>>>> Hi! > >>>>>>> > >>>>>>> This means, your system has UART serial device $B".(B you can check this from loader prompt: efi-show -g global -v ConOut or with efivar from running system. This would trigger efi console driver to use TERM_EMU, which can be turned off by user and doing that would cause ESC sequences to be passed directly to console. Might that be true in your case? > >>>>>>> > >>>>>>> rgds, > >>>>>>> toomas > >>>>>>> > >>>>>>>> On 15. Mar 2020, at 17:17, Tomoaki AOKI wrote: > >>>>>>>> > >>>>>>>> Hi. > >>>>>>>> > >>>>>>>> This broke loader menu display on efifb. At least on amd64. > >>>>>>>> ESC sequences without ESC character are shown. > >>>>>>>> Key input (at least 1, 2 and enter) works OK. > >>>>>>>> I suspect outputs for SIO is sent to efifb and ESC codes are ignored. > >>>>>>>> > >>>>>>>> Reverting this fixes the issue. > >>>>> I got the same issue with loader menu when was upgrading from r358827 to > >>>>> r359028 (x86-64). > >>>>> > >>>>> But unfortunately the broken menu is just a part of my problem. The > >>>>> real pain is that a FreeBSD 13.0-CURRENT system hosted by VMware ESXi or > >>>>> Workstation doesn't boot anymore after r358989. An ugly workaround[1] > >>>>> (exiting from the loader menu into the loader prompt, running ls or > >>>>> show, scrolling the result down and then executing boot) I found some > >>>>> time ago doesn't work anymore. After running boot/boot -s/selecting > >>>>> menu item, a hypervisor just shuts session down with the following > >>>>> message: ``The firmware encountered an unexpected exception. The virtual > >>>>> machine cannot boot.'' > >>>>> > >>>>> The virtual guests don't have any UART (even USB) serial devices in > >>>>> their settings. efi-show prints result similar to what Tomoaki got: > >>>>> > >>>>> OK efi-show -g global -v CounOut > >>>>> global NV,BS,RS ConOut = PciRoot(0x0)/Pci(0x2,0x0)/AcpiAdr(0x80014310) > >>>>> > >>>>> Undefining TERM_EMU doesn't help. I had completely removed CFLAGS > >>>>> assignment with TERM_EMU from stand/efi/libefi/Makefile and rebuilt > >>>>> kernel/world -- nothing changed. I don't define TERM_EMU in my > >>>>> make.conf or/and src.conf. > >>>>> > >>>>> Reverting this revision fix booting (and menu, of course). > >>>>> > >>>>> FreeBSD on physical hardware boots just fine with this revision, but has > >>>>> corrupted loader menu. > >>>>> > >>>>> Toomas, please help us to fix this. I can live with the broken menu, > >>>>> but I don't want to revert this revision every time I will upgrade my > >>>>> virtual machines after r359028 now. > >>>> > >>>> > >>>> Hi! > >>>> > >>>> The build, are you doing build with -DNO_CLEAN? or can you run make clean in stand and then build it again? Otherwise, if you can poke me on irc, I$B!G(Bd like to get to the bottom of this. > >>> Hello! > >>> > >>> I'm sorry, currently I have no access to either IRC, nor my build > >>> machine. Therefore, I can't show you the build log. NO_CLEAN -- no, I > >>> don't use it. What I've actually done regarding to testing TERM_EMU: I > >>> removed `CFLAGS+= -DTERM_EMU` (and the .if condition wrapping this line) > >>> from the Makefile, removed /usr/obj directory, and buildworld and > >>> buildkernel then. And then install rebuilt kernel/userland on a target > >>> machine. Nothing changed, but it should? > >> > >> > >> Please try r359099. > > > > Many thanks! Worked fine for me, at least buildworld after `make clean` > > on /usr/src/stand. > > > > > > A bit details: > > Cleaning /usr/src/stand before building itself didn't help. > > Updating to r359099 and later was mandatory. > > No VMs are tested, as I'm currently not running any VMs. > > > > > > For your further investigation, kenv output is like this: > > > This output is not from patched loader, is it? Could you mail me from latest $B".(B specifically, I$B!G(Bm expecting to see LINES and COLUMNS values. > > What seems to be the cause is, we allocate screen buffer for text, if that allocation does fail, we did abort efi_cons_init() and the putchar did switch to direct output without interpreting the esc sequences. Now the question would be, why we failed to allocate the buffer - we do have 64MB heap as default and console is initialized early$B!D(B > > thanks, > toomas Maybe I got a hint... COLUMNS and LINES (either `show` on loader prompt or `kenv` on running system) only appears when I manually set any mode by ex. `mode 0` on loader prompt. Just viewing current mode by `mode` doesn't affect. If `mode 0`, COLUMNS="80" LINES="25" and if `mode 3` COLUMNS="128" LINES="40". (Actually, 128x48 screen after starting kernel, though.) This would mean COLUMNS and LINES cannot be fetched properly unless mode is manually set on loader prompt. Can it be any hint for you, Toomas? FYI, on loader prompt, `mode` Current mode: 0 Mode 0: 80 columns, 25 rows Mode 2: 100 columns, 31 rows Mode 3: 128 columns, 40 rows Select a mode with the command "mode " OK `gop list` mode 0: 640x480x32, stride=640 mode 1: 800x600x32, stride=800 mode 2: 1024x768x32, stride=1024 OK On running system after `mode 0` on loader prompt: === kenv output excluding hardware serial No. and UUID below === COLUMNS="80" LINES="25" acpi.oem="LENOVO" acpi.revision="2" acpi.rsdp="0x000000004fd0e014" acpi.rsdt="0x000000004fd0c0c4" acpi.xsdt="0x000000004fd0c188" acpi.xsdt_length="36" autoboot_delay="NO" bootenv_autolist="YES" bootenvs[0]="zfs:zsysS05/ROOT/head-r359007-boot1Rev6TA3" bootenvs[10]="zfs:zsysS05/ROOT/head-r358565-boot1Rev6TA3" bootenvs[11]="zfs:zsysS05/ROOT/he<" bootenvs[12]="zfs:zsysS05/ROOT/" bootenvs[13]="zfs:zsysS05/ROOT/boot1Rev6TA3" bootenvs[14]="zfs:zsysS05/ROOT/" bootenvs[1]="zfs:zsysS05/ROOT/head-r359005-boot1Rev6TA3" bootenvs[2]="zfs:zsysS05/ROOT/head-r358989-boot1Rev6TA3" bootenvs[3]="zfs:zsysS05/ROOT/head-r358906-boot1Rev6TA3" bootenvs[4]="zfs:zsysS05/ROOT/head-r358872-boot1Rev6TA3" bootenvs[5]="zfs:zsysS05/ROOT/head-r358865-boot1Rev6TA3-2" bootenvs[6]="zfs:zsysS05/ROOT/head-r358827-boot1Rev6TA3" bootenvs[7]="zfs:zsysS05/ROOT/head-r358734-boot1Rev6TA3" bootenvs[8]="zfs:zsysS05/ROOT/head-r358729-boot1Rev6TA3" bootenvs[9]="zfs:zsysS05/ROOT/head-r358669-boot1Rev6TA3" bootenvs_count="15" bootfile="kernel" comconsole_pcidev="" comconsole_port="1016" comconsole_speed="9600" console="efi" currdev="zfs:zsysS05/ROOT/default:" efi-version="2.60" efi_max_resolution="2160p" hint.acpi.0.oem="LENOVO" hint.acpi.0.revision="2" hint.acpi.0.rsdp="0x000000004fd0e014" hint.acpi.0.rsdt="0x000000004fd0c0c4" hint.acpi.0.xsdt="0x000000004fd0c188" hint.acpi.0.xsdt_length="36" hint.acpi_throttle.0.disabled="1" hint.atkbd.0.at="atkbdc" hint.atkbd.0.irq="1" hint.atkbdc.0.at="isa" hint.atkbdc.0.port="0x060" hint.atrtc.0.at="isa" hint.atrtc.0.irq="8" hint.atrtc.0.port="0x70" hint.attimer.0.at="isa" hint.attimer.0.irq="0" hint.attimer.0.port="0x40" hint.fd.0.at="fdc0" hint.fd.0.drive="0" hint.fd.1.at="fdc0" hint.fd.1.drive="1" hint.fdc.0.at="isa" hint.fdc.0.drq="2" hint.fdc.0.irq="6" hint.fdc.0.port="0x3F0" hint.p4tcc.0.disabled="1" hint.ppc.0.at="isa" hint.ppc.0.irq="7" hint.psm.0.at="atkbdc" hint.psm.0.irq="12" hint.sc.0.at="isa" hint.sc.0.flags="0x100" hint.smbios.0.mem="0x4d580000" hint.uart.0.at="isa" hint.uart.0.flags="0x10" hint.uart.0.irq="4" hint.uart.0.port="0x3F8" hint.uart.1.at="isa" hint.uart.1.irq="3" hint.uart.1.port="0x2F8" hw.ata.atapi_dma="1" hw.ibrs_disable="0" hw.pci.allow_unsupported_io_range="1" hw.psm.elantech_support="1" hw.psm.trackpoint_support="1" interpret="OK" kern.hz="8192" kern.ipc.semmni="40" kern.ipc.semmns="300" kern.ipc.shm_use_phys="1" kern.ipc.shmmni="1024" kern.ipc.shmseg="1024" kern.maxfiles="250000" kern.vty="vt" kernel="kernel" kernel_options="" kernel_path="/boot/kernel" kernelname="/boot/kernel/kernel" kernels="kernel kernel.old" kernels_autodetect="YES" loaddev="zfs:zsysS05/ROOT/default:" loader_conf_files="/boot/device.hints /boot/loader.conf /boot/loader.conf.local" machdep.mitigations.taa.enable="3" module_blacklist="drm drm2 radeonkms i915kms amdgpu" module_path="/boot/kernel;/boot/modules;/boot/dtb;/boot/dtb/overlays" net.graph.maxdata="65536" nextboot_conf="/boot/nextboot.conf" nextboot_enable="NO" prompt="${interpret}" script.lang="lua" smbios.bios.reldate="11/04/2019" smbios.bios.vendor="LENOVO" smbios.bios.version="N2CET48W (1.31 )" smbios.chassis.maker="LENOVO" smbios.chassis.serial="********" smbios.chassis.tag="No Asset Information" smbios.chassis.version="None" smbios.memory.enabled="33554432" smbios.planar.location="Not Available" smbios.planar.maker="LENOVO" smbios.planar.product="20M9CTO1WW" smbios.planar.serial="***********" smbios.planar.tag="Not Available" smbios.planar.version="SDK0J40697 WIN" smbios.socket.enabled="1" smbios.socket.populated="1" smbios.system.family="ThinkPad P52" smbios.system.maker="LENOVO" smbios.system.product="20M9CTO1WW" smbios.system.serial="********" smbios.system.sku="LENOVO_MT_20M9_BU_Think_FM_ThinkPad P52" smbios.system.uuid="********-****-****-****-************" smbios.system.version="ThinkPad P52" smbios.version="3.1" teken.bg_color="0" teken.fg_color="7" twiddle_divisor="1" verbose_loading="NO" vfs.root.mountfrom="zfs:zsysS05/ROOT/default" vfs.zfs.abd_chunk_size="1024" vfs.zfs.prefetch_disable="1" vm.pmap.pti="1" zfs_be_active="zfs:zsysS05/ROOT/default" zfs_be_currpage="1" zfs_be_root="zsysS05/ROOT" === kenv output excluding hardware serial No. and UUID above === > > > > > === `kenv` output except hardware serial No. and UUID below === > > > > acpi.oem="LENOVO" > > acpi.revision="2" > > acpi.rsdp="0x000000004fd0e014" > > acpi.rsdt="0x000000004fd0c0c4" > > acpi.xsdt="0x000000004fd0c188" > > acpi.xsdt_length="36" > > bootenv_autolist="YES" > > bootenvs[0]="zfs:zsysS05/ROOT/head-r359007-boot1Rev6TA3" > > bootenvs[10]="zfs:zsysS05/ROOT/head-r358565-boot1Rev6TA3" > > bootenvs[11]="zfs:zsysS05/ROOT/" > > bootenvs[1]="zfs:zsysS05/ROOT/head-r359005-boot1Rev6TA3" > > bootenvs[2]="zfs:zsysS05/ROOT/head-r358989-boot1Rev6TA3" > > bootenvs[3]="zfs:zsysS05/ROOT/head-r358906-boot1Rev6TA3" > > bootenvs[4]="zfs:zsysS05/ROOT/head-r358872-boot1Rev6TA3" > > bootenvs[5]="zfs:zsysS05/ROOT/head-r358865-boot1Rev6TA3-2" > > bootenvs[6]="zfs:zsysS05/ROOT/head-r358827-boot1Rev6TA3" > > bootenvs[7]="zfs:zsysS05/ROOT/head-r358734-boot1Rev6TA3" > > bootenvs[8]="zfs:zsysS05/ROOT/head-r358729-boot1Rev6TA3" > > bootenvs[9]="zfs:zsysS05/ROOT/head-r358669-boot1Rev6TA3" > > bootenvs_count="12" > > bootfile="kernel" > > comconsole_pcidev="" > > comconsole_port="1016" > > comconsole_speed="9600" > > console="efi" > > currdev="zfs:zsysS05/ROOT/default:" > > efi-version="2.60" > > efi_max_resolution="2160p" > > hint.acpi.0.oem="LENOVO" > > hint.acpi.0.revision="2" > > hint.acpi.0.rsdp="0x000000004fd0e014" > > hint.acpi.0.rsdt="0x000000004fd0c0c4" > > hint.acpi.0.xsdt="0x000000004fd0c188" > > hint.acpi.0.xsdt_length="36" > > hint.acpi_throttle.0.disabled="1" > > hint.atkbd.0.at ="atkbdc" > > hint.atkbd.0.irq="1" > > hint.atkbdc.0.at ="isa" > > hint.atkbdc.0.port="0x060" > > hint.atrtc.0.at ="isa" > > hint.atrtc.0.irq="8" > > hint.atrtc.0.port="0x70" > > hint.attimer.0.at ="isa" > > hint.attimer.0.irq="0" > > hint.attimer.0.port="0x40" > > hint.fd.0.at ="fdc0" > > hint.fd.0.drive="0" > > hint.fd.1.at ="fdc0" > > hint.fd.1.drive="1" > > hint.fdc.0.at ="isa" > > hint.fdc.0.drq="2" > > hint.fdc.0.irq="6" > > hint.fdc.0.port="0x3F0" > > hint.p4tcc.0.disabled="1" > > hint.ppc.0.at ="isa" > > hint.ppc.0.irq="7" > > hint.psm.0.at ="atkbdc" > > hint.psm.0.irq="12" > > hint.sc.0.at ="isa" > > hint.sc.0.flags="0x100" > > hint.smbios.0.mem="0x4d580000" > > hint.uart.0.at ="isa" > > hint.uart.0.flags="0x10" > > hint.uart.0.irq="4" > > hint.uart.0.port="0x3F8" > > hint.uart.1.at ="isa" > > hint.uart.1.irq="3" > > hint.uart.1.port="0x2F8" > > hw.ata.atapi_dma="1" > > hw.ibrs_disable="0" > > hw.pci.allow_unsupported_io_range="1" > > hw.psm.elantech_support="1" > > hw.psm.trackpoint_support="1" > > kern.hz="8192" > > kern.ipc.semmni="40" > > kern.ipc.semmns="300" > > kern.ipc.shm_use_phys="1" > > kern.ipc.shmmni="1024" > > kern.ipc.shmseg="1024" > > kern.maxfiles="250000" > > kern.vty="vt" > > kernel="kernel" > > kernel_options="" > > kernel_path="/boot/kernel" > > kernelname="/boot/kernel/kernel" > > kernels="kernel kernel.old" > > kernels_autodetect="YES" > > loaddev="zfs:zsysS05/ROOT/default:" > > loader_conf_files="/boot/device.hints /boot/loader.conf /boot/loader.conf.local" > > machdep.mitigations.taa.enable="3" > > module_blacklist="drm drm2 radeonkms i915kms amdgpu" > > module_path="/boot/kernel;/boot/modules;/boot/dtb;/boot/dtb/overlays" > > net.graph.maxdata="65536" > > nextboot_conf="/boot/nextboot.conf" > > nextboot_enable="NO" > > script.lang="lua" > > smbios.bios.reldate="11/04/2019" > > smbios.bios.vendor="LENOVO" > > smbios.bios.version="N2CET48W (1.31 )" > > smbios.chassis.maker="LENOVO" > > smbios.chassis.serial="********" > > smbios.chassis.tag="No Asset Information" > > smbios.chassis.version="None" > > smbios.memory.enabled="33554432" > > smbios.planar.location="Not Available" > > smbios.planar.maker="LENOVO" > > smbios.planar.product="20M9CTO1WW" > > smbios.planar.serial="***********" > > smbios.planar.tag="Not Available" > > smbios.planar.version="SDK0J40697 WIN" > > smbios.socket.enabled="1" > > smbios.socket.populated="1" > > smbios.system.family="ThinkPad P52" > > smbios.system.maker="LENOVO" > > smbios.system.product="20M9CTO1WW" > > smbios.system.serial="********" > > smbios.system.sku="LENOVO_MT_20M9_BU_Think_FM_ThinkPad P52" > > smbios.system.uuid="********-****-****-****-************" > > smbios.system.version="ThinkPad P52" > > smbios.version="3.1" > > twiddle_divisor="1" > > verbose_loading="NO" > > vfs.root.mountfrom="zfs:zsysS05/ROOT/default" > > vfs.zfs.abd_chunk_size="1024" > > vfs.zfs.prefetch_disable="1" > > vm.pmap.pti="1" > > zfs_be_active="zfs:zsysS05/ROOT/default" > > zfs_be_currpage="1" > > zfs_be_root="zsysS05/ROOT" > > > > > > === `kenv` output except hardware serial No and UUID above === > > > > > >> > >> > >>> > >>>> > >>>> Regarding the issue with vm, I am afraid the roots are going much deeper there. I have not got to the exact cause (and therefore a fix), but the problem is not about this specific patch. The problem is about memory map, specifically one just before and after we switch off Boot Services. > >>> That's a very bad news for me. Looking at HEAD's commit list I hope > >>> that's a known problem? Or should I open a PR on bugs.FreeBSD.org >? > >> > >> > >> PR is always good idea. Finding the exact cause and getting sure fix is question of time. I have done quite amount of investigation, but I can not yet point the finger even as there is one known issue identified. *IF* I am correct about the issue, the fix will take some time as it is not too trivial. > >> > >> > >>> > >>> Moreover, I believe the next snapshot of the CURRENT (which will be made > >>> after r358989) made by the release team will be unbootable on VMware > >>> hypervisors. > >> > >> BIOS version is ok. > >> > >> rgds, > >> toomas > >> > >>> > >>>> > >>>> rgds, > >>>> toomas > >>>> > >>>> > >>>>> > >>>>> [1] > >>>>> https://old.reddit.com/r/freebsd/comments/drxqlm/failed_to_do_efi_boot_on_a_vmware_virtual_machine/f6om6p2/ >>> > >>>>>>>> > >>>>>>>> Not tried (not enough time for now as I'm mainly using stable/12), > >>>>>>>> but possibly calling efi_cons_probe() from efi_cons_init() would be > >>>>>>>> needed, as ome codes are moved from the latter to the former. > >>>>>>>> > >>>>>>>> > >>>>>>>>> Author: tsoome > >>>>>>>>> Date: Sat Mar 14 06:36:03 2020 > >>>>>>>>> New Revision: 358989 > >>>>>>>>> URL: https://svnweb.freebsd.org/changeset/base/358989 > >>>>>>>>> > >>>>>>>>> Log: > >>>>>>>>> loader: add comconsole implementation on top of SIO protocol > >>>>>>>>> > >>>>>>>>> Provide comconsole on top of SIO for arm platforms (x86 does use bios > >>>>>>>> version). > >>>>>>>>> > >>>>>>>>> Added: > >>>>>>>>> head/stand/efi/loader/efiserialio.c (contents, props changed) > >>>>>>>>> Modified: > >>>>>>>>> head/stand/efi/libefi/efi_console.c > >>>>>>>>> head/stand/efi/loader/arch/arm/Makefile.inc > >>>>>>>>> head/stand/efi/loader/arch/arm64/Makefile.inc > >>>>>>>>> head/stand/efi/loader/conf.c > >>>>>>>>> head/stand/efi/loader/main.c > >>>>>>>>> > >>>>>>>>> Modified: head/stand/efi/libefi/efi_console.c > >>>>>>>>> ============================================================================== > >>>>>>>>> --- head/stand/efi/libefi/efi_console.c Sat Mar 14 05:57:22 > >>>>>>>> 2020 (r358988) > >>>>>>>>> +++ head/stand/efi/libefi/efi_console.c > >>>>>>>> Sat Mar 14 06:36:03 2020 (r358989) > >>>>>>>>> @@ -377,9 +377,22 @@ efi_cons_respond(void *s __unused, const void *buf __u > >>>>>>>>> { > >>>>>>>>> } > >>>>>>>>> > >>>>>>>>> +/* > >>>>>>>>> + * Set up conin/conout/coninex to make sure we have input ready. > >>>>>>>>> + */ > >>>>>>>>> static void > >>>>>>>>> efi_cons_probe(struct console *cp) > >>>>>>>>> { > >>>>>>>>> + EFI_STATUS status; > >>>>>>>>> + > >>>>>>>>> + conout = ST->ConOut; > >>>>>>>>> + conin = ST->ConIn; > >>>>>>>>> + > >>>>>>>>> + status = BS->OpenProtocol(ST->ConsoleInHandle, > >>>>>>>> &simple_input_ex_guid, > >>>>>>>>> + (void **)&coninex, IH, NULL, > >>>>>>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); > >>>>>>>>> + if (status != EFI_SUCCESS) > >>>>>>>>> + coninex = NULL; > >>>>>>>>> + > >>>>>>>>> cp->c_flags |= C_PRESENTIN | C_PRESENTOUT; > >>>>>>>>> } > >>>>>>>>> > >>>>>>>>> @@ -889,15 +902,7 @@ efi_cons_init(int arg) > >>>>>>>>> if (conin != NULL) > >>>>>>>>> return (0); > >>>>>>>>> > >>>>>>>>> - conout = ST->ConOut; > >>>>>>>>> - conin = ST->ConIn; > >>>>>>>>> - > >>>>>>>>> conout->EnableCursor(conout, TRUE); > >>>>>>>>> - status = BS->OpenProtocol(ST->ConsoleInHandle, > >>>>>>>> &simple_input_ex_guid, > >>>>>>>>> - (void **)&coninex, IH, NULL, > >>>>>>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); > >>>>>>>>> - if (status != EFI_SUCCESS) > >>>>>>>>> - coninex = NULL; > >>>>>>>>> - > >>>>>>>>> if (efi_cons_update_mode()) > >>>>>>>>> return (0); > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> Modified: head/stand/efi/loader/arch/arm/Makefile.inc > >>>>>>>>> ============================================================================== > >>>>>>>>> --- head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 > >>>>>>>> 05:57:22 2020 (r358988) > >>>>>>>>> +++ head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 06:36:03 > >>>>>>>> 2020 (r358989) > >>>>>>>>> @@ -1,6 +1,7 @@ > >>>>>>>>> # $FreeBSD$ > >>>>>>>>> > >>>>>>>>> SRCS+= exec.c \ > >>>>>>>>> + efiserialio.c \ > >>>>>>>>> start.S > >>>>>>>>> > >>>>>>>>> HAVE_FDT=yes > >>>>>>>> > >>>>>>>> (Snip) > >>>>>>>> > >>>>>>>>> @@ -930,7 +936,6 @@ main(int argc, CHAR16 *argv[]) > >>>>>>>>> if (!has_kbd && (howto & RB_PROBE)) > >>>>>>>>> howto |= RB_SERIAL | RB_MULTIPLE; > >>>>>>>>> howto &= ~RB_PROBE; > >>>>>>>>> - uhowto = parse_uefi_con_out(); > >>>>>>>>> > >>>>>>>>> /* > >>>>>>>>> * Read additional environment variables from the boot device's > >>>>>>>> > >>>>>>>> -- > >>>>>>>> Tomoaki AOKI > >> > > > > > > -- > > Tomoaki AOKI > > -- Tomoaki AOKI From owner-svn-src-head@freebsd.org Fri Mar 20 11:51:09 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7D5EA264162; Fri, 20 Mar 2020 11:51:09 +0000 (UTC) (envelope-from alfredo@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kMYS73NFz3JZD; Fri, 20 Mar 2020 11:51:08 +0000 (UTC) (envelope-from alfredo@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id ED28123228; Fri, 20 Mar 2020 11:51:08 +0000 (UTC) (envelope-from alfredo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KBp8Gg012159; Fri, 20 Mar 2020 11:51:08 GMT (envelope-from alfredo@FreeBSD.org) Received: (from alfredo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KBp8Sd012158; Fri, 20 Mar 2020 11:51:08 GMT (envelope-from alfredo@FreeBSD.org) Message-Id: <202003201151.02KBp8Sd012158@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: alfredo set sender to alfredo@FreeBSD.org using -f From: "Alfredo Dal'Ava Junior" Date: Fri, 20 Mar 2020 11:51:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359160 - head/sys/powerpc/powerpc X-SVN-Group: head X-SVN-Commit-Author: alfredo X-SVN-Commit-Paths: head/sys/powerpc/powerpc X-SVN-Commit-Revision: 359160 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 11:51:09 -0000 Author: alfredo Date: Fri Mar 20 11:51:08 2020 New Revision: 359160 URL: https://svnweb.freebsd.org/changeset/base/359160 Log: [PowerPC] fix panic reading /dev/kmem on !DMAP machines This fixes /dev/kmem causing panic on machines not using DMAP. Found when running libkvm Kyua test case on QEMU VM with no Huge Pages support. Reviewed by: jhibbits, luporl Approved by: jhibbits (mentor) Sponsored by: Eldorado Research Institute (eldorado.org.br) Differential Revision: https://reviews.freebsd.org/D23776 Modified: head/sys/powerpc/powerpc/mem.c Modified: head/sys/powerpc/powerpc/mem.c ============================================================================== --- head/sys/powerpc/powerpc/mem.c Fri Mar 20 05:12:16 2020 (r359159) +++ head/sys/powerpc/powerpc/mem.c Fri Mar 20 11:51:08 2020 (r359160) @@ -98,9 +98,11 @@ memrw(struct cdev *dev, struct uio *uio, int flags) struct vm_page m; vm_page_t marr; vm_size_t cnt; + ssize_t orig_resid; cnt = 0; error = 0; + orig_resid = uio->uio_resid; while (uio->uio_resid > 0 && !error) { iov = uio->uio_iov; @@ -137,7 +139,8 @@ kmem_direct_mapped: off = v & PAGE_MASK; else if (dev2unit(dev) == CDEV_MINOR_KMEM) { va = uio->uio_offset; - if ((va < VM_MIN_KERNEL_ADDRESS) || (va > virtual_end)) { + if (hw_direct_map && + ((va < VM_MIN_KERNEL_ADDRESS) || (va > virtual_end))) { v = DMAP_TO_PHYS(va); goto kmem_direct_mapped; } @@ -151,24 +154,34 @@ kmem_direct_mapped: off = v & PAGE_MASK; * so that we don't create any zero-fill pages. */ - for (; va < eva; va += PAGE_SIZE) - if (pmap_extract(kernel_pmap, va) == 0) - return (EFAULT); + for (; va < eva; va += PAGE_SIZE) { + if (pmap_extract(kernel_pmap, va) == 0) { + error = EFAULT; + break; + } + } + if (error != 0) + break; prot = (uio->uio_rw == UIO_READ) ? VM_PROT_READ : VM_PROT_WRITE; va = uio->uio_offset; - if (kernacc((void *) va, iov->iov_len, prot) - == FALSE) - return (EFAULT); + if (((va >= VM_MIN_KERNEL_ADDRESS) && (va <= virtual_end)) && + !kernacc((void *) va, iov->iov_len, prot)) { + error = EFAULT; + break; + } error = uiomove((void *)va, iov->iov_len, uio); - - continue; } } - + /* + * Don't return error if any byte was written. Read and write + * can return error only if no i/o was performed. + */ + if (uio->uio_resid != orig_resid) + error = 0; return (error); } From owner-svn-src-head@freebsd.org Fri Mar 20 12:59:20 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 310C7266A6E for ; Fri, 20 Mar 2020 12:59:20 +0000 (UTC) (envelope-from tsoome@me.com) Received: from pv50p00im-ztdg10012101.me.com (pv50p00im-ztdg10012101.me.com [17.58.6.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48kP470BQKz4BBW for ; Fri, 20 Mar 2020 12:59:18 +0000 (UTC) (envelope-from tsoome@me.com) Received: from nazgul.lan (148-52-235-80.sta.estpak.ee [80.235.52.148]) by pv50p00im-ztdg10012101.me.com (Postfix) with ESMTPSA id C08458404C9; Fri, 20 Mar 2020 12:59:12 +0000 (UTC) From: Toomas Soome Message-Id: <889F68BB-59AE-4381-8947-10B769CF7008@me.com> Mime-Version: 1.0 (Mac OS X Mail 13.0 \(3608.60.0.2.5\)) Subject: Re: svn commit: r358989 - in head/stand/efi: libefi loader loader/arch/arm loader/arch/arm64 Date: Fri, 20 Mar 2020 14:59:10 +0200 In-Reply-To: <20200320202906.8fcd15f65de67d54d31c5547@dec.sakura.ne.jp> Cc: Ruslan Garipov , svn-src-head@freebsd.org To: junchoon@dec.sakura.ne.jp References: <20200316001745.07df62f72d647b924b657d86@dec.sakura.ne.jp> <746EE981-536F-49AD-9B76-F9F103ECB1F9@me.com> <20200317211614.bbe1b18a32d7863941fffbe8@dec.sakura.ne.jp> <55b1f91b-6157-bfee-cd74-124ed50bc663@gmail.com> <944c641f-b570-1420-6b63-96374217d795@gmail.com> <4ABF87AE-948F-43A8-940A-744FC2F4DE4D@me.com> <20200319213329.f354314a9a72e1419d76d2ba@dec.sakura.ne.jp> <20200320202906.8fcd15f65de67d54d31c5547@dec.sakura.ne.jp> X-Mailer: Apple Mail (2.3608.60.0.2.5) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2020-03-20_03:, , signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1908290000 definitions=main-2003200056 X-Rspamd-Queue-Id: 48kP470BQKz4BBW X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.52 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:17.58.0.0/16]; FREEMAIL_FROM(0.00)[me.com]; MV_CASE(0.50)[]; URI_COUNT_ODD(1.00)[169]; DKIM_TRACE(0.00)[me.com:+]; DMARC_POLICY_ALLOW(-0.50)[me.com,quarantine]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; FREEMAIL_ENVFROM(0.00)[me.com]; RCVD_IN_DNSWL_LOW(-0.10)[49.6.58.17.list.dnswl.org : 127.0.5.1]; ASN(0.00)[asn:714, ipnet:17.58.0.0/20, country:US]; MID_RHS_MATCH_FROM(0.00)[]; RECEIVED_SPAMHAUS_PBL(0.00)[148.52.235.80.khpj7ygk5idzvmvt5x4ziurxhy.zen.dq.spamhaus.net : 127.0.0.10]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.93)[-0.930,0]; R_DKIM_ALLOW(-0.20)[me.com:s=1a1hai]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; NEURAL_HAM_LONG(-0.99)[-0.993,0]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; IP_SCORE(0.00)[ip: (-3.44), ipnet: 17.58.0.0/20(-2.00), asn: 714(-2.38), country: US(-0.05)]; IP_SCORE_FREEMAIL(0.00)[]; DWL_DNSWL_LOW(-1.00)[me.com.dwl.dnswl.org : 127.0.5.1]; TO_MATCH_ENVRCPT_SOME(0.00)[]; FREEMAIL_CC(0.00)[gmail.com]; RCVD_TLS_ALL(0.00)[]; RCVD_COUNT_TWO(0.00)[2] Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 12:59:20 -0000 > On 20. Mar 2020, at 13:29, Tomoaki AOKI = wrote: >=20 >=20 > Maybe I got a hint... > COLUMNS and LINES (either `show` on loader prompt or `kenv` on running > system) only appears when I manually set any mode by ex. `mode 0` > on loader prompt. Just viewing current mode by `mode` doesn't affect. >=20 > If `mode 0`, COLUMNS=3D"80" LINES=3D"25" and if `mode 3` COLUMNS=3D"128"= > LINES=3D"40". (Actually, 128x48 screen after starting kernel, though.) >=20 > This would mean COLUMNS and LINES cannot be fetched properly unless > mode is manually set on loader prompt. > Can it be any hint for you, Toomas? >=20 having *no* COLUMNS and LINES is greatly confusing because we set them = just before we return from efi_cons_update_mode() in = efi/libefi/efi_console.c. I specifically did change that with last = patch, so we would get the values, and we do not return early as we did = before. And yes, we do update COLUMNS/LINES from command_mode() in = efi/loader/main.c, by calling this same efi_cons_update_mode(). Perhaps = we should read current mode and set it from efi_cons_probe() to work = around this bug.=20 But thank you from this feedback, it is really helpful. thanks, toomas >=20 > FYI, on loader prompt,=20 >=20 > `mode` > Current mode: 0 > Mode 0: 80 columns, 25 rows > Mode 2: 100 columns, 31 rows > Mode 3: 128 columns, 40 rows > Select a mode with the command "mode " > OK >=20 > `gop list` > mode 0: 640x480x32, stride=3D640 > mode 1: 800x600x32, stride=3D800 > mode 2: 1024x768x32, stride=3D1024 > OK >=20 >=20 > On running system after `mode 0` on loader prompt: >=20 > =3D=3D=3D kenv output excluding hardware serial No. and UUID below =3D=3D= =3D >=20 > COLUMNS=3D"80" > LINES=3D"25" > acpi.oem=3D"LENOVO" > acpi.revision=3D"2" > acpi.rsdp=3D"0x000000004fd0e014" > acpi.rsdt=3D"0x000000004fd0c0c4" > acpi.xsdt=3D"0x000000004fd0c188" > acpi.xsdt_length=3D"36" > autoboot_delay=3D"NO" > bootenv_autolist=3D"YES" > bootenvs[0]=3D"zfs:zsysS05/ROOT/head-r359007-boot1Rev6TA3" > bootenvs[10]=3D"zfs:zsysS05/ROOT/head-r358565-boot1Rev6TA3" > bootenvs[11]=3D"zfs:zsysS05/ROOT/he<" > bootenvs[12]=3D"zfs:zsysS05/ROOT/" > bootenvs[13]=3D"zfs:zsysS05/ROOT/boot1Rev6TA3" > bootenvs[14]=3D"zfs:zsysS05/ROOT/" > bootenvs[1]=3D"zfs:zsysS05/ROOT/head-r359005-boot1Rev6TA3" > bootenvs[2]=3D"zfs:zsysS05/ROOT/head-r358989-boot1Rev6TA3" > bootenvs[3]=3D"zfs:zsysS05/ROOT/head-r358906-boot1Rev6TA3" > bootenvs[4]=3D"zfs:zsysS05/ROOT/head-r358872-boot1Rev6TA3" > bootenvs[5]=3D"zfs:zsysS05/ROOT/head-r358865-boot1Rev6TA3-2" > bootenvs[6]=3D"zfs:zsysS05/ROOT/head-r358827-boot1Rev6TA3" > bootenvs[7]=3D"zfs:zsysS05/ROOT/head-r358734-boot1Rev6TA3" > bootenvs[8]=3D"zfs:zsysS05/ROOT/head-r358729-boot1Rev6TA3" > bootenvs[9]=3D"zfs:zsysS05/ROOT/head-r358669-boot1Rev6TA3" > bootenvs_count=3D"15" > bootfile=3D"kernel" > comconsole_pcidev=3D"" > comconsole_port=3D"1016" > comconsole_speed=3D"9600" > console=3D"efi" > currdev=3D"zfs:zsysS05/ROOT/default:" > efi-version=3D"2.60" > efi_max_resolution=3D"2160p" > hint.acpi.0.oem=3D"LENOVO" > hint.acpi.0.revision=3D"2" > hint.acpi.0.rsdp=3D"0x000000004fd0e014" > hint.acpi.0.rsdt=3D"0x000000004fd0c0c4" > hint.acpi.0.xsdt=3D"0x000000004fd0c188" > hint.acpi.0.xsdt_length=3D"36" > hint.acpi_throttle.0.disabled=3D"1" > hint.atkbd.0.at =3D"atkbdc" > hint.atkbd.0.irq=3D"1" > hint.atkbdc.0.at =3D"isa" > hint.atkbdc.0.port=3D"0x060" > hint.atrtc.0.at =3D"isa" > hint.atrtc.0.irq=3D"8" > hint.atrtc.0.port=3D"0x70" > hint.attimer.0.at =3D"isa" > hint.attimer.0.irq=3D"0" > hint.attimer.0.port=3D"0x40" > hint.fd.0.at =3D"fdc0" > hint.fd.0.drive=3D"0" > hint.fd.1.at =3D"fdc0" > hint.fd.1.drive=3D"1" > hint.fdc.0.at =3D"isa" > hint.fdc.0.drq=3D"2" > hint.fdc.0.irq=3D"6" > hint.fdc.0.port=3D"0x3F0" > hint.p4tcc.0.disabled=3D"1" > hint.ppc.0.at =3D"isa" > hint.ppc.0.irq=3D"7" > hint.psm.0.at =3D"atkbdc" > hint.psm.0.irq=3D"12" > hint.sc.0.at =3D"isa" > hint.sc.0.flags=3D"0x100" > hint.smbios.0.mem=3D"0x4d580000" > hint.uart.0.at =3D"isa" > hint.uart.0.flags=3D"0x10" > hint.uart.0.irq=3D"4" > hint.uart.0.port=3D"0x3F8" > hint.uart.1.at =3D"isa" > hint.uart.1.irq=3D"3" > hint.uart.1.port=3D"0x2F8" > hw.ata.atapi_dma=3D"1" > hw.ibrs_disable=3D"0" > hw.pci.allow_unsupported_io_range=3D"1" > hw.psm.elantech_support=3D"1" > hw.psm.trackpoint_support=3D"1" > interpret=3D"OK" > kern.hz=3D"8192" > kern.ipc.semmni=3D"40" > kern.ipc.semmns=3D"300" > kern.ipc.shm_use_phys=3D"1" > kern.ipc.shmmni=3D"1024" > kern.ipc.shmseg=3D"1024" > kern.maxfiles=3D"250000" > kern.vty=3D"vt" > kernel=3D"kernel" > kernel_options=3D"" > kernel_path=3D"/boot/kernel" > kernelname=3D"/boot/kernel/kernel" > kernels=3D"kernel kernel.old" > kernels_autodetect=3D"YES" > loaddev=3D"zfs:zsysS05/ROOT/default:" > loader_conf_files=3D"/boot/device.hints /boot/loader.conf = /boot/loader.conf.local" > machdep.mitigations.taa.enable=3D"3" > module_blacklist=3D"drm drm2 radeonkms i915kms amdgpu" > module_path=3D"/boot/kernel;/boot/modules;/boot/dtb;/boot/dtb/overlays" > net.graph.maxdata=3D"65536" > nextboot_conf=3D"/boot/nextboot.conf" > nextboot_enable=3D"NO" > prompt=3D"${interpret}" > script.lang=3D"lua" > smbios.bios.reldate=3D"11/04/2019" > smbios.bios.vendor=3D"LENOVO" > smbios.bios.version=3D"N2CET48W (1.31 )" > smbios.chassis.maker=3D"LENOVO" > smbios.chassis.serial=3D"********" > smbios.chassis.tag=3D"No Asset Information" > smbios.chassis.version=3D"None" > smbios.memory.enabled=3D"33554432" > smbios.planar.location=3D"Not Available" > smbios.planar.maker=3D"LENOVO" > smbios.planar.product=3D"20M9CTO1WW" > smbios.planar.serial=3D"***********" > smbios.planar.tag=3D"Not Available" > smbios.planar.version=3D"SDK0J40697 WIN" > smbios.socket.enabled=3D"1" > smbios.socket.populated=3D"1" > smbios.system.family=3D"ThinkPad P52" > smbios.system.maker=3D"LENOVO" > smbios.system.product=3D"20M9CTO1WW" > smbios.system.serial=3D"********" > smbios.system.sku=3D"LENOVO_MT_20M9_BU_Think_FM_ThinkPad P52" > smbios.system.uuid=3D"********-****-****-****-************" > smbios.system.version=3D"ThinkPad P52" > smbios.version=3D"3.1" > teken.bg_color=3D"0" > teken.fg_color=3D"7" > twiddle_divisor=3D"1" > verbose_loading=3D"NO" > vfs.root.mountfrom=3D"zfs:zsysS05/ROOT/default" > vfs.zfs.abd_chunk_size=3D"1024" > vfs.zfs.prefetch_disable=3D"1" > vm.pmap.pti=3D"1" > zfs_be_active=3D"zfs:zsysS05/ROOT/default" > zfs_be_currpage=3D"1" > zfs_be_root=3D"zsysS05/ROOT" >=20 > =3D=3D=3D kenv output excluding hardware serial No. and UUID above =3D=3D= =3D >=20 >=20 >>=20 >>>=20 >>> =3D=3D=3D `kenv` output except hardware serial No. and UUID below = =3D=3D=3D >>>=20 >>> acpi.oem=3D"LENOVO" >>> acpi.revision=3D"2" >>> acpi.rsdp=3D"0x000000004fd0e014" >>> acpi.rsdt=3D"0x000000004fd0c0c4" >>> acpi.xsdt=3D"0x000000004fd0c188" >>> acpi.xsdt_length=3D"36" >>> bootenv_autolist=3D"YES" >>> bootenvs[0]=3D"zfs:zsysS05/ROOT/head-r359007-boot1Rev6TA3" >>> bootenvs[10]=3D"zfs:zsysS05/ROOT/head-r358565-boot1Rev6TA3" >>> bootenvs[11]=3D"zfs:zsysS05/ROOT/" >>> bootenvs[1]=3D"zfs:zsysS05/ROOT/head-r359005-boot1Rev6TA3" >>> bootenvs[2]=3D"zfs:zsysS05/ROOT/head-r358989-boot1Rev6TA3" >>> bootenvs[3]=3D"zfs:zsysS05/ROOT/head-r358906-boot1Rev6TA3" >>> bootenvs[4]=3D"zfs:zsysS05/ROOT/head-r358872-boot1Rev6TA3" >>> bootenvs[5]=3D"zfs:zsysS05/ROOT/head-r358865-boot1Rev6TA3-2" >>> bootenvs[6]=3D"zfs:zsysS05/ROOT/head-r358827-boot1Rev6TA3" >>> bootenvs[7]=3D"zfs:zsysS05/ROOT/head-r358734-boot1Rev6TA3" >>> bootenvs[8]=3D"zfs:zsysS05/ROOT/head-r358729-boot1Rev6TA3" >>> bootenvs[9]=3D"zfs:zsysS05/ROOT/head-r358669-boot1Rev6TA3" >>> bootenvs_count=3D"12" >>> bootfile=3D"kernel" >>> comconsole_pcidev=3D"" >>> comconsole_port=3D"1016" >>> comconsole_speed=3D"9600" >>> console=3D"efi" >>> currdev=3D"zfs:zsysS05/ROOT/default:" >>> efi-version=3D"2.60" >>> efi_max_resolution=3D"2160p" >>> hint.acpi.0.oem=3D"LENOVO" >>> hint.acpi.0.revision=3D"2" >>> hint.acpi.0.rsdp=3D"0x000000004fd0e014" >>> hint.acpi.0.rsdt=3D"0x000000004fd0c0c4" >>> hint.acpi.0.xsdt=3D"0x000000004fd0c188" >>> hint.acpi.0.xsdt_length=3D"36" >>> hint.acpi_throttle.0.disabled=3D"1" >>> hint.atkbd.0.at >=3D"atkbdc" >>> hint.atkbd.0.irq=3D"1" >>> hint.atkbdc.0.at = >=3D"isa" >>> hint.atkbdc.0.port=3D"0x060" >>> hint.atrtc.0.at >=3D"isa" >>> hint.atrtc.0.irq=3D"8" >>> hint.atrtc.0.port=3D"0x70" >>> hint.attimer.0.at = >=3D"isa" >>> hint.attimer.0.irq=3D"0" >>> hint.attimer.0.port=3D"0x40" >>> hint.fd.0.at >=3D"fdc0" >>> hint.fd.0.drive=3D"0" >>> hint.fd.1.at >=3D"fdc0" >>> hint.fd.1.drive=3D"1" >>> hint.fdc.0.at >=3D"isa" >>> hint.fdc.0.drq=3D"2" >>> hint.fdc.0.irq=3D"6" >>> hint.fdc.0.port=3D"0x3F0" >>> hint.p4tcc.0.disabled=3D"1" >>> hint.ppc.0.at >=3D"isa" >>> hint.ppc.0.irq=3D"7" >>> hint.psm.0.at >=3D"atkbdc" >>> hint.psm.0.irq=3D"12" >>> hint.sc.0.at >=3D"isa" >>> hint.sc.0.flags=3D"0x100" >>> hint.smbios.0.mem=3D"0x4d580000" >>> hint.uart.0.at >=3D"isa" >>> hint.uart.0.flags=3D"0x10" >>> hint.uart.0.irq=3D"4" >>> hint.uart.0.port=3D"0x3F8" >>> hint.uart.1.at >=3D"isa" >>> hint.uart.1.irq=3D"3" >>> hint.uart.1.port=3D"0x2F8" >>> hw.ata.atapi_dma=3D"1" >>> hw.ibrs_disable=3D"0" >>> hw.pci.allow_unsupported_io_range=3D"1" >>> hw.psm.elantech_support=3D"1" >>> hw.psm.trackpoint_support=3D"1" >>> kern.hz=3D"8192" >>> kern.ipc.semmni=3D"40" >>> kern.ipc.semmns=3D"300" >>> kern.ipc.shm_use_phys=3D"1" >>> kern.ipc.shmmni=3D"1024" >>> kern.ipc.shmseg=3D"1024" >>> kern.maxfiles=3D"250000" >>> kern.vty=3D"vt" >>> kernel=3D"kernel" >>> kernel_options=3D"" >>> kernel_path=3D"/boot/kernel" >>> kernelname=3D"/boot/kernel/kernel" >>> kernels=3D"kernel kernel.old" >>> kernels_autodetect=3D"YES" >>> loaddev=3D"zfs:zsysS05/ROOT/default:" >>> loader_conf_files=3D"/boot/device.hints /boot/loader.conf = /boot/loader.conf.local" >>> machdep.mitigations.taa.enable=3D"3" >>> module_blacklist=3D"drm drm2 radeonkms i915kms amdgpu" >>> = module_path=3D"/boot/kernel;/boot/modules;/boot/dtb;/boot/dtb/overlays" >>> net.graph.maxdata=3D"65536" >>> nextboot_conf=3D"/boot/nextboot.conf" >>> nextboot_enable=3D"NO" >>> script.lang=3D"lua" >>> smbios.bios.reldate=3D"11/04/2019" >>> smbios.bios.vendor=3D"LENOVO" >>> smbios.bios.version=3D"N2CET48W (1.31 )" >>> smbios.chassis.maker=3D"LENOVO" >>> smbios.chassis.serial=3D"********" >>> smbios.chassis.tag=3D"No Asset Information" >>> smbios.chassis.version=3D"None" >>> smbios.memory.enabled=3D"33554432" >>> smbios.planar.location=3D"Not Available" >>> smbios.planar.maker=3D"LENOVO" >>> smbios.planar.product=3D"20M9CTO1WW" >>> smbios.planar.serial=3D"***********" >>> smbios.planar.tag=3D"Not Available" >>> smbios.planar.version=3D"SDK0J40697 WIN" >>> smbios.socket.enabled=3D"1" >>> smbios.socket.populated=3D"1" >>> smbios.system.family=3D"ThinkPad P52" >>> smbios.system.maker=3D"LENOVO" >>> smbios.system.product=3D"20M9CTO1WW" >>> smbios.system.serial=3D"********" >>> smbios.system.sku=3D"LENOVO_MT_20M9_BU_Think_FM_ThinkPad P52" >>> smbios.system.uuid=3D"********-****-****-****-************" >>> smbios.system.version=3D"ThinkPad P52" >>> smbios.version=3D"3.1" >>> twiddle_divisor=3D"1" >>> verbose_loading=3D"NO" >>> vfs.root.mountfrom=3D"zfs:zsysS05/ROOT/default" >>> vfs.zfs.abd_chunk_size=3D"1024" >>> vfs.zfs.prefetch_disable=3D"1" >>> vm.pmap.pti=3D"1" >>> zfs_be_active=3D"zfs:zsysS05/ROOT/default" >>> zfs_be_currpage=3D"1" >>> zfs_be_root=3D"zsysS05/ROOT" >>>=20 >>>=20 >>> =3D=3D=3D `kenv` output except hardware serial No and UUID above =3D=3D= =3D >>>=20 >>>=20 >>>>=20 >>>>=20 >>>>>=20 >>>>>>=20 >>>>>> Regarding the issue with vm, I am afraid the roots are going much = deeper there. I have not got to the exact cause (and therefore a fix), = but the problem is not about this specific patch. The problem is about = memory map, specifically one just before and after we switch off Boot = Services.=20 >>>>> That's a very bad news for me. Looking at HEAD's commit list I = hope >>>>> that's a known problem? Or should I open a PR on bugs.FreeBSD.org = > >>? >>>>=20 >>>>=20 >>>> PR is always good idea. Finding the exact cause and getting sure = fix is question of time. I have done quite amount of investigation, but = I can not yet point the finger even as there is one known issue = identified. *IF* I am correct about the issue, the fix will take some = time as it is not too trivial. >>>>=20 >>>>=20 >>>>>=20 >>>>> Moreover, I believe the next snapshot of the CURRENT (which will = be made >>>>> after r358989) made by the release team will be unbootable on = VMware >>>>> hypervisors. >>>>=20 >>>> BIOS version is ok. >>>>=20 >>>> rgds, >>>> toomas >>>>=20 >>>>>=20 >>>>>>=20 >>>>>> rgds, >>>>>> toomas >>>>>>=20 >>>>>>=20 >>>>>>>=20 >>>>>>> [1] >>>>>>> = https://old.reddit.com/r/freebsd/comments/drxqlm/failed_to_do_efi_boot_on_= a_vmware_virtual_machine/f6om6p2/ = >>>>>>> >>>>>>>>>>=20 >>>>>>>>>> Not tried (not enough time for now as I'm mainly using = stable/12), >>>>>>>>>> but possibly calling efi_cons_probe() from efi_cons_init() = would be >>>>>>>>>> needed, as ome codes are moved from the latter to the former. >>>>>>>>>>=20 >>>>>>>>>>=20 >>>>>>>>>>> Author: tsoome >>>>>>>>>>> Date: Sat Mar 14 06:36:03 2020 >>>>>>>>>>> New Revision: 358989 >>>>>>>>>>> URL: https://svnweb.freebsd.org/changeset/base/358989 >>>>>>>>>>>=20 >>>>>>>>>>> Log: >>>>>>>>>>> loader: add comconsole implementation on top of SIO protocol >>>>>>>>>>>=20 >>>>>>>>>>> Provide comconsole on top of SIO for arm platforms (x86 does = use bios >>>>>>>>>> version). >>>>>>>>>>>=20 >>>>>>>>>>> Added: >>>>>>>>>>> head/stand/efi/loader/efiserialio.c (contents, props = changed) >>>>>>>>>>> Modified: >>>>>>>>>>> head/stand/efi/libefi/efi_console.c >>>>>>>>>>> head/stand/efi/loader/arch/arm/Makefile.inc >>>>>>>>>>> head/stand/efi/loader/arch/arm64/Makefile.inc >>>>>>>>>>> head/stand/efi/loader/conf.c >>>>>>>>>>> head/stand/efi/loader/main.c >>>>>>>>>>>=20 >>>>>>>>>>> Modified: head/stand/efi/libefi/efi_console.c >>>>>>>>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>>>>>>>> --- head/stand/efi/libefi/efi_console.c Sat Mar 14 = 05:57:22 >>>>>>>>>> 2020 (r358988) >>>>>>>>>>> +++ head/stand/efi/libefi/efi_console.c >>>>>>>>>> Sat Mar 14 06:36:03 2020 (r358989) >>>>>>>>>>> @@ -377,9 +377,22 @@ efi_cons_respond(void *s __unused, = const void *buf __u >>>>>>>>>>> { >>>>>>>>>>> } >>>>>>>>>>>=20 >>>>>>>>>>> +/* >>>>>>>>>>> + * Set up conin/conout/coninex to make sure we have input = ready. >>>>>>>>>>> + */ >>>>>>>>>>> static void >>>>>>>>>>> efi_cons_probe(struct console *cp) >>>>>>>>>>> { >>>>>>>>>>> + EFI_STATUS status; >>>>>>>>>>> + >>>>>>>>>>> + conout =3D ST->ConOut; >>>>>>>>>>> + conin =3D ST->ConIn; >>>>>>>>>>> + >>>>>>>>>>> + status =3D BS->OpenProtocol(ST->ConsoleInHandle, >>>>>>>>>> &simple_input_ex_guid, >>>>>>>>>>> + (void **)&coninex, IH, NULL, >>>>>>>>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); >>>>>>>>>>> + if (status !=3D EFI_SUCCESS) >>>>>>>>>>> + coninex =3D NULL; >>>>>>>>>>> + >>>>>>>>>>> cp->c_flags |=3D C_PRESENTIN | C_PRESENTOUT; >>>>>>>>>>> } >>>>>>>>>>>=20 >>>>>>>>>>> @@ -889,15 +902,7 @@ efi_cons_init(int arg) >>>>>>>>>>> if (conin !=3D NULL) >>>>>>>>>>> return (0); >>>>>>>>>>>=20 >>>>>>>>>>> - conout =3D ST->ConOut; >>>>>>>>>>> - conin =3D ST->ConIn; >>>>>>>>>>> - >>>>>>>>>>> conout->EnableCursor(conout, TRUE); >>>>>>>>>>> - status =3D BS->OpenProtocol(ST->ConsoleInHandle, >>>>>>>>>> &simple_input_ex_guid, >>>>>>>>>>> - (void **)&coninex, IH, NULL, >>>>>>>>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); >>>>>>>>>>> - if (status !=3D EFI_SUCCESS) >>>>>>>>>>> - coninex =3D NULL; >>>>>>>>>>> - >>>>>>>>>>> if (efi_cons_update_mode()) >>>>>>>>>>> return (0); >>>>>>>>>>>=20 >>>>>>>>>>>=20 >>>>>>>>>>> Modified: head/stand/efi/loader/arch/arm/Makefile.inc >>>>>>>>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>>>>>>>> --- head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar = 14 >>>>>>>>>> 05:57:22 2020 (r358988) >>>>>>>>>>> +++ head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar = 14 06:36:03 >>>>>>>>>> 2020 (r358989) >>>>>>>>>>> @@ -1,6 +1,7 @@ >>>>>>>>>>> # $FreeBSD$ >>>>>>>>>>>=20 >>>>>>>>>>> SRCS+=3D exec.c \ >>>>>>>>>>> + efiserialio.c \ >>>>>>>>>>> start.S >>>>>>>>>>>=20 >>>>>>>>>>> HAVE_FDT=3Dyes >>>>>>>>>>=20 >>>>>>>>>> (Snip) >>>>>>>>>>=20 >>>>>>>>>>> @@ -930,7 +936,6 @@ main(int argc, CHAR16 *argv[]) >>>>>>>>>>> if (!has_kbd && (howto & RB_PROBE)) >>>>>>>>>>> howto |=3D RB_SERIAL | RB_MULTIPLE; >>>>>>>>>>> howto &=3D ~RB_PROBE; >>>>>>>>>>> - uhowto =3D parse_uefi_con_out(); >>>>>>>>>>>=20 >>>>>>>>>>> /* >>>>>>>>>>> * Read additional environment variables from the boot = device's >>>>>>>>>>=20 >>>>>>>>>> --=20 >>>>>>>>>> Tomoaki AOKI >>>>=20 >>>=20 >>>=20 >>> --=20 >>> Tomoaki AOKI >> >>=20 >=20 >=20 > --=20 > Tomoaki AOKI > From owner-svn-src-head@freebsd.org Fri Mar 20 14:49:46 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 5DBF8269509; Fri, 20 Mar 2020 14:49:46 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kRWZ1cbPz43wY; Fri, 20 Mar 2020 14:49:46 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4BFAD25292; Fri, 20 Mar 2020 14:49:45 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KEninJ017393; Fri, 20 Mar 2020 14:49:44 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KEni1p017392; Fri, 20 Mar 2020 14:49:44 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <202003201449.02KEni1p017392@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Fri, 20 Mar 2020 14:49:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359162 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 359162 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 14:49:46 -0000 Author: tuexen Date: Fri Mar 20 14:49:44 2020 New Revision: 359162 URL: https://svnweb.freebsd.org/changeset/base/359162 Log: Remove a set, but unused variable. MFC after: 1 week Modified: head/sys/netinet/sctp_usrreq.c Modified: head/sys/netinet/sctp_usrreq.c ============================================================================== --- head/sys/netinet/sctp_usrreq.c Fri Mar 20 14:26:08 2020 (r359161) +++ head/sys/netinet/sctp_usrreq.c Fri Mar 20 14:49:44 2020 (r359162) @@ -782,14 +782,6 @@ sctp_disconnect(struct socket *so) * we will allow user data to be sent first * and move to SHUTDOWN-PENDING */ - struct sctp_nets *netp; - - if (stcb->asoc.alternate) { - netp = stcb->asoc.alternate; - } else { - netp = stcb->asoc.primary_destination; - } - SCTP_ADD_SUBSTATE(stcb, SCTP_STATE_SHUTDOWN_PENDING); sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, stcb->sctp_ep, stcb, NULL); if ((*asoc->ss_functions.sctp_ss_is_user_msgs_incomplete) (stcb, asoc)) { From owner-svn-src-head@freebsd.org Fri Mar 20 15:07:16 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E224C269C08; Fri, 20 Mar 2020 15:07:16 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kRvm5ZkTz4KhR; Fri, 20 Mar 2020 15:07:16 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id BAB2925661; Fri, 20 Mar 2020 15:07:16 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KF7GUQ029209; Fri, 20 Mar 2020 15:07:16 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KF7GHI029206; Fri, 20 Mar 2020 15:07:16 GMT (envelope-from imp@FreeBSD.org) Message-Id: <202003201507.02KF7GHI029206@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Fri, 20 Mar 2020 15:07:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359163 - in head: lib/clang lib/clang/libllvm share/mk X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: in head: lib/clang lib/clang/libllvm share/mk X-SVN-Commit-Revision: 359163 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 15:07:17 -0000 Author: imp Date: Fri Mar 20 15:07:15 2020 New Revision: 359163 URL: https://svnweb.freebsd.org/changeset/base/359163 Log: Remove sparc support from clang build infrastructure. Any remaining sparc files will be mopped up in future imports. Differential Revision: https://reviews.freebsd.org/D24128 Modified: head/lib/clang/libllvm/Makefile head/lib/clang/llvm.build.mk head/share/mk/src.opts.mk Modified: head/lib/clang/libllvm/Makefile ============================================================================== --- head/lib/clang/libllvm/Makefile Fri Mar 20 14:49:44 2020 (r359162) +++ head/lib/clang/libllvm/Makefile Fri Mar 20 15:07:15 2020 (r359163) @@ -11,14 +11,13 @@ CFLAGS+= -I${.OBJDIR} .if ${MK_LLVM_TARGET_AARCH64} == "no" && ${MK_LLVM_TARGET_ARM} == "no" && \ ${MK_LLVM_TARGET_BPF} == "no" && ${MK_LLVM_TARGET_MIPS} == "no" && \ ${MK_LLVM_TARGET_POWERPC} == "no" && ${MK_LLVM_TARGET_RISCV} == "no" && \ - ${MK_LLVM_TARGET_SPARC} == "no" && ${MK_LLVM_TARGET_X86} == "no" + ${MK_LLVM_TARGET_X86} == "no" .error Please enable at least one of: MK_LLVM_TARGET_AARCH64,\ MK_LLVM_TARGET_ARM, MK_LLVM_TARGET_BPF, MK_LLVM_TARGET_MIPS, \ - MK_LLVM_TARGET_POWERPC, MK_LLVM_TARGET_RISCV, MK_LLVM_TARGET_SPARC, \ - or MK_LLVM_TARGET_X86 + MK_LLVM_TARGET_POWERPC, MK_LLVM_TARGET_RISCV, or MK_LLVM_TARGET_X86 .endif -.for arch in AArch64 ARM BPF Mips PowerPC RISCV Sparc X86 +.for arch in AArch64 ARM BPF Mips PowerPC RISCV X86 . if ${MK_LLVM_TARGET_${arch:tu}} != "no" CFLAGS+= -I${LLVM_SRCS}/lib/Target/${arch} . endif @@ -1241,32 +1240,6 @@ SRCS_MIN+= Target/RISCV/TargetInfo/RISCVTargetInfo.cpp SRCS_MIN+= Target/RISCV/Utils/RISCVBaseInfo.cpp SRCS_MIN+= Target/RISCV/Utils/RISCVMatInt.cpp .endif # MK_LLVM_TARGET_RISCV -.if ${MK_LLVM_TARGET_SPARC} != "no" -SRCS_MIN+= Target/Sparc/AsmParser/SparcAsmParser.cpp -SRCS_MIN+= Target/Sparc/DelaySlotFiller.cpp -SRCS_XDW+= Target/Sparc/Disassembler/SparcDisassembler.cpp -SRCS_MIN+= Target/Sparc/LeonPasses.cpp -SRCS_MIN+= Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp -SRCS_MIN+= Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp -SRCS_MIN+= Target/Sparc/MCTargetDesc/SparcInstPrinter.cpp -SRCS_MIN+= Target/Sparc/MCTargetDesc/SparcMCAsmInfo.cpp -SRCS_MIN+= Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp -SRCS_MIN+= Target/Sparc/MCTargetDesc/SparcMCExpr.cpp -SRCS_MIN+= Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp -SRCS_MIN+= Target/Sparc/MCTargetDesc/SparcTargetStreamer.cpp -SRCS_MIN+= Target/Sparc/SparcAsmPrinter.cpp -SRCS_MIN+= Target/Sparc/SparcFrameLowering.cpp -SRCS_MIN+= Target/Sparc/SparcISelDAGToDAG.cpp -SRCS_MIN+= Target/Sparc/SparcISelLowering.cpp -SRCS_MIN+= Target/Sparc/SparcInstrInfo.cpp -SRCS_MIN+= Target/Sparc/SparcMCInstLower.cpp -SRCS_MIN+= Target/Sparc/SparcMachineFunctionInfo.cpp -SRCS_MIN+= Target/Sparc/SparcRegisterInfo.cpp -SRCS_MIN+= Target/Sparc/SparcSubtarget.cpp -SRCS_MIN+= Target/Sparc/SparcTargetMachine.cpp -SRCS_MIN+= Target/Sparc/SparcTargetObjectFile.cpp -SRCS_MIN+= Target/Sparc/TargetInfo/SparcTargetInfo.cpp -.endif # MK_LLVM_TARGET_SPARC SRCS_MIN+= Target/Target.cpp SRCS_MIN+= Target/TargetLoweringObjectFile.cpp SRCS_MIN+= Target/TargetMachine.cpp @@ -1689,8 +1662,8 @@ beforebuild: # Note: some rules are superfluous, not every combination is valid. .for arch in \ - AArch64/AArch64 ARM/ARM BPF/BPF Mips/Mips PowerPC/PPC Sparc/Sparc \ - RISCV/RISCV X86/X86 + AArch64/AArch64 ARM/ARM BPF/BPF Mips/Mips PowerPC/PPC RISCV/RISCV \ + X86/X86 . for hdr in \ AsmMatcher/-gen-asm-matcher \ AsmWriter1/-gen-asm-writer,-asmwriternum=1 \ @@ -1808,17 +1781,6 @@ TGHDRS+= RISCVGenRegisterInfo.inc TGHDRS+= RISCVGenSubtargetInfo.inc TGHDRS+= RISCVGenSystemOperands.inc .endif # MK_LLVM_TARGET_RISCV -.if ${MK_LLVM_TARGET_SPARC} != "no" -TGHDRS+= SparcGenAsmMatcher.inc -TGHDRS+= SparcGenAsmWriter.inc -TGHDRS+= SparcGenCallingConv.inc -TGHDRS+= SparcGenDAGISel.inc -TGHDRS+= SparcGenDisassemblerTables.inc -TGHDRS+= SparcGenInstrInfo.inc -TGHDRS+= SparcGenMCCodeEmitter.inc -TGHDRS+= SparcGenRegisterInfo.inc -TGHDRS+= SparcGenSubtargetInfo.inc -.endif # MK_LLVM_TARGET_SPARC .if ${MK_LLVM_TARGET_X86} != "no" TGHDRS+= X86GenAsmMatcher.inc TGHDRS+= X86GenAsmWriter.inc Modified: head/lib/clang/llvm.build.mk ============================================================================== --- head/lib/clang/llvm.build.mk Fri Mar 20 14:49:44 2020 (r359162) +++ head/lib/clang/llvm.build.mk Fri Mar 20 15:07:15 2020 (r359163) @@ -80,12 +80,6 @@ CFLAGS+= -DLLVM_TARGET_ENABLE_RISCV LLVM_NATIVE_ARCH= RISCV . endif .endif -.if ${MK_LLVM_TARGET_SPARC} != "no" -CFLAGS+= -DLLVM_TARGET_ENABLE_SPARC -. if ${MACHINE_CPUARCH} == "sparc64" -LLVM_NATIVE_ARCH= Sparc -. endif -.endif .if ${MK_LLVM_TARGET_X86} != "no" CFLAGS+= -DLLVM_TARGET_ENABLE_X86 . if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" Modified: head/share/mk/src.opts.mk ============================================================================== --- head/share/mk/src.opts.mk Fri Mar 20 14:49:44 2020 (r359162) +++ head/share/mk/src.opts.mk Fri Mar 20 15:07:15 2020 (r359163) @@ -283,8 +283,6 @@ __DEFAULT_DEPENDENT_OPTIONS+= LLVM_TARGET_ARM/LLVM_TAR __DEFAULT_DEPENDENT_OPTIONS+= LLVM_TARGET_${__llt:${__LLVM_TARGET_FILT}:tu}/LLVM_TARGET_ALL .endif .endfor -# until we can unwind clang + sparc -MK_LLVM_TARGET_SPARC:=no __DEFAULT_NO_OPTIONS+=LLVM_TARGET_BPF From owner-svn-src-head@freebsd.org Fri Mar 20 15:07:22 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id A5A01269C55; Fri, 20 Mar 2020 15:07:22 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kRvt3MBzz4KqL; Fri, 20 Mar 2020 15:07:22 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6C5AA25662; Fri, 20 Mar 2020 15:07:21 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KF7Lj7029263; Fri, 20 Mar 2020 15:07:21 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KF7Leh029262; Fri, 20 Mar 2020 15:07:21 GMT (envelope-from imp@FreeBSD.org) Message-Id: <202003201507.02KF7Leh029262@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Fri, 20 Mar 2020 15:07:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359164 - head/share/mk X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: head/share/mk X-SVN-Commit-Revision: 359164 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 15:07:22 -0000 Author: imp Date: Fri Mar 20 15:07:21 2020 New Revision: 359164 URL: https://svnweb.freebsd.org/changeset/base/359164 Log: Eliminate misuse of $MACHINE for userland things. Use TARGET_ARCH and/or MACHINE_ARCH exclusively. Change all __TT uses to __T with appropriate translations. MACHINE/TARGET is to be used only for kernel things. Modified: head/share/mk/src.opts.mk Modified: head/share/mk/src.opts.mk ============================================================================== --- head/share/mk/src.opts.mk Fri Mar 20 15:07:15 2020 (r359163) +++ head/share/mk/src.opts.mk Fri Mar 20 15:07:21 2020 (r359164) @@ -256,11 +256,6 @@ __T=${TARGET_ARCH} .else __T=${MACHINE_ARCH} .endif -.if defined(TARGET) -__TT=${TARGET} -.else -__TT=${MACHINE} -.endif # All supported backends for LLVM_TARGET_XXX __LLVM_TARGETS= \ @@ -270,13 +265,13 @@ __LLVM_TARGETS= \ powerpc \ riscv \ x86 -__LLVM_TARGET_FILT= C/(amd64|i386)/x86/:S/arm64/aarch64/:S/powerpc64/powerpc/ +__LLVM_TARGET_FILT= C/(amd64|i386)/x86/:S/powerpc64/powerpc/:S/powerpcspe/powerpc/ .for __llt in ${__LLVM_TARGETS} # Default enable the given TARGET's LLVM_TARGET support -.if ${__TT:${__LLVM_TARGET_FILT}} == ${__llt} +.if ${__T:${__LLVM_TARGET_FILT}} == ${__llt} __DEFAULT_YES_OPTIONS+= LLVM_TARGET_${__llt:${__LLVM_TARGET_FILT}:tu} # aarch64 needs arm for -m32 support. -.elif ${__TT} == "arm64" && ${__llt} == "arm" +.elif ${__T} == "aarch64" && ${__llt:Marm*} != "" __DEFAULT_DEPENDENT_OPTIONS+= LLVM_TARGET_ARM/LLVM_TARGET_AARCH64 # Default the rest of the LLVM_TARGETs to the value of MK_LLVM_TARGET_ALL. .else @@ -288,7 +283,7 @@ __DEFAULT_NO_OPTIONS+=LLVM_TARGET_BPF .include -.if ${__TT} != "mips" +.if ${__T:Mmips*} == "" # Clang is installed as the default /usr/bin/cc. __DEFAULT_YES_OPTIONS+=CLANG_BOOTSTRAP CLANG_IS_CC .else @@ -307,7 +302,7 @@ __DEFAULT_NO_OPTIONS+=BINUTILS_BOOTSTRAP .if ${__T:Mriscv*} != "" BROKEN_OPTIONS+=OFED .endif -.if ${__TT} != "mips" && ${__T} != "powerpc" && ${__T} != "powerpcspe" +.if ${__T:Mmips*} != "mips" && ${__T} != "powerpc" && ${__T} != "powerpcspe" __DEFAULT_YES_OPTIONS+=LLD_BOOTSTRAP LLD_IS_LD .else __DEFAULT_NO_OPTIONS+=LLD_BOOTSTRAP LLD_IS_LD From owner-svn-src-head@freebsd.org Fri Mar 20 15:09:35 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id DD8DD269EE2 for ; Fri, 20 Mar 2020 15:09:35 +0000 (UTC) (envelope-from brigadir15@gmail.com) Received: from mail-lf1-f68.google.com (mail-lf1-f68.google.com [209.85.167.68]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kRyR1F0rz4P2f for ; Fri, 20 Mar 2020 15:09:34 +0000 (UTC) (envelope-from brigadir15@gmail.com) Received: by mail-lf1-f68.google.com with SMTP id j15so4824773lfk.6 for ; Fri, 20 Mar 2020 08:09:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=R73J27MO/CrdOGEU1QUzYOOtnNd5uES1Jy2bh4uydvg=; b=hiKHssr1XOkBmJ7fY2tDqjrafz+exDi309tsdVf3XLL7SWoTITN4BfejNGBMOSE8Tt 0VVojGIrr27vKu8p+7h6hDMAJWHV0i9IsNmWcMOXoXboPWga17OnoslhJAjYMdxg8g/o IhFjWSjhluX2eE6pPfQy2aNzufwKqesJ2QbLlTWNcR0525vRf//18qHEwABXrtripUUk OqLyWUpbjhXL7YVGvjFjm11Unzds6S/M0sIwttJ7WdMgXFHYgAdqkc1uTrRBuxSzInI/ WaYQ9xmel0zE5SxOYE67ZzONriyxS+qcD8B1QGobaJmszDwWiWb8kTQgjpsBhhOovGbR yBow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=R73J27MO/CrdOGEU1QUzYOOtnNd5uES1Jy2bh4uydvg=; b=eov8Lh3QoUZJV6ijuhy7teCDjnyfOiXMUzvzqBPU7wjC5bVnxX8Qnqpw3KdR9pLmro 0pYdbCTK+hMqSUkonU3io4Z6NJWGI4XstYLqbxyiU+SIxSVF3FsB19DsObVeY81U73QG 45MtrvxaJtj7gprd6cu+v421RyGQfRweh7DbO3KE00hC+mfOmfKTC9G+B25gBG4xIUOh AMIWcu1mW2eOEK0z/jF7H6M+cLxzSM0OHJOxXF8E6wobzzUqDItiamwLL/HlpxTFkqlR 0nFLOTW2JbF6DGy/FNuCZYYchn7eA7nCQW0pE9WQUPuyWpzohSnw8ZWD905tGoQxo6pT L0nA== X-Gm-Message-State: ANhLgQ3hfUAVsKuBU3uB9kk3V5ifNs62cOnWH4G+5SFhRkucUjdxrYCu 047UGjSCz7t7TZGahc7uhT0= X-Google-Smtp-Source: ADFU+vszb2m80Oly1n5QFVB5ycpUUF39Irjh91cxCD1MLvUTLZBosFSfY51P2IRMPvMThC1sscgJrg== X-Received: by 2002:a05:6512:3191:: with SMTP id i17mr5635472lfe.33.1584716969374; Fri, 20 Mar 2020 08:09:29 -0700 (PDT) Received: from [192.168.1.3] ([46.48.69.183]) by smtp.gmail.com with ESMTPSA id q6sm3613183ljp.21.2020.03.20.08.09.28 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 20 Mar 2020 08:09:28 -0700 (PDT) Subject: Re: svn commit: r358989 - in head/stand/efi: libefi loader loader/arch/arm loader/arch/arm64 To: Toomas Soome , junchoon@dec.sakura.ne.jp Cc: svn-src-head@freebsd.org, Ruslan Garipov References: <20200316001745.07df62f72d647b924b657d86@dec.sakura.ne.jp> <746EE981-536F-49AD-9B76-F9F103ECB1F9@me.com> <20200317211614.bbe1b18a32d7863941fffbe8@dec.sakura.ne.jp> <55b1f91b-6157-bfee-cd74-124ed50bc663@gmail.com> <944c641f-b570-1420-6b63-96374217d795@gmail.com> <4ABF87AE-948F-43A8-940A-744FC2F4DE4D@me.com> <20200319213329.f354314a9a72e1419d76d2ba@dec.sakura.ne.jp> From: Ruslan Garipov Message-ID: <750368ad-3815-d7e7-a283-f29feb38b35c@gmail.com> Date: Fri, 20 Mar 2020 20:09:26 +0500 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 48kRyR1F0rz4P2f X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20161025 header.b=hiKHssr1; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of brigadir15@gmail.com designates 209.85.167.68 as permitted sender) smtp.mailfrom=brigadir15@gmail.com X-Spamd-Result: default: False [-3.00 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17:c]; RCVD_COUNT_THREE(0.00)[3]; DKIM_TRACE(0.00)[gmail.com:+]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; FREEMAIL_TO(0.00)[me.com]; FROM_EQ_ENVFROM(0.00)[]; IP_SCORE(0.00)[ip: (-2.64), ipnet: 209.85.128.0/17(-2.89), asn: 15169(-1.23), country: US(-0.05)]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; MID_RHS_MATCH_FROM(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[svn-src-head@freebsd.org]; IP_SCORE_FREEMAIL(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[68.167.85.209.list.dnswl.org : 127.0.5.0]; RWL_MAILSPIKE_POSSIBLE(0.00)[68.167.85.209.rep.mailspike.net : 127.0.0.17]; RCVD_TLS_ALL(0.00)[] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 15:09:35 -0000 On 3/19/2020 5:55 PM, Toomas Soome via svn-src-head wrote: > > >> On 19. Mar 2020, at 14:33, Tomoaki AOKI wrote: >> >> On Thu, 19 Mar 2020 00:28:59 +0200 >> Toomas Soome > wrote: >> >>> >>> >>>> On 18. Mar 2020, at 20:41, Ruslan Garipov wrote: >>>> >>>> On 3/18/2020 10:29 PM, Toomas Soome via svn-src-head wrote: >>>>> >>>>> >>>>>> On 18. Mar 2020, at 18:40, Ruslan Garipov wrote: >>>>>> >>>>>> On 3/17/2020 5:16 PM, Tomoaki AOKI wrote: >>>>>>> Hi! Thanks for your respond. >>>>>>> >>>>>>> Unfortunately, no. >>>>>>> I'm running on ThinkPad P52, which has no com connector installed. >>>>>>> No USB serial interface connected. >>>>>>> >>>>>>> `efi-show -g global -v ConOut` on loader prompt shows >>>>>>> >>>>>>> global NV,BS,RS ConOut = >>>>>>> PciRoot(0,0)/Pci((0x1,oxo)/Pci(0x0,0x0)/AcpiAdr(0x80010100) >>>>>>> >>>>>>> Moreover, my previous idea didn't help. >>>>>>> >>>>>>> Neither >>>>>>> console="vidconsole" >>>>>>> console="eficonsole" >>>>>>> console="efi_console" >>>>>>> nor >>>>>>> console="efi" >>>>>>> in /boot/loader.conf works. >>>>>>> >>>>>>> Defining / undefining TERM_EMU on build are untested. >>>>>>> >>>>>>> Is there any setting for /boot/loader.conf to control the behavior? >>>>>>> >>>>>>> >>>>>>> Regards. >>>>>>> >>>>>>> >>>>>>> On Mon, 16 Mar 2020 08:26:56 +0200 >>>>>>> Toomas Soome wrote: >>>>>>> >>>>>>>> Hi! >>>>>>>> >>>>>>>> This means, your system has UART serial device 〓 you can check this from loader prompt: efi-show -g global -v ConOut or with efivar from running system. This would trigger efi console driver to use TERM_EMU, which can be turned off by user and doing that would cause ESC sequences to be passed directly to console. Might that be true in your case? >>>>>>>> >>>>>>>> rgds, >>>>>>>> toomas >>>>>>>> >>>>>>>>> On 15. Mar 2020, at 17:17, Tomoaki AOKI wrote: >>>>>>>>> >>>>>>>>> Hi. >>>>>>>>> >>>>>>>>> This broke loader menu display on efifb. At least on amd64. >>>>>>>>> ESC sequences without ESC character are shown. >>>>>>>>> Key input (at least 1, 2 and enter) works OK. >>>>>>>>> I suspect outputs for SIO is sent to efifb and ESC codes are ignored. >>>>>>>>> >>>>>>>>> Reverting this fixes the issue. >>>>>> I got the same issue with loader menu when was upgrading from r358827 to >>>>>> r359028 (x86-64). >>>>>> >>>>>> But unfortunately the broken menu is just a part of my problem. The >>>>>> real pain is that a FreeBSD 13.0-CURRENT system hosted by VMware ESXi or >>>>>> Workstation doesn't boot anymore after r358989. An ugly workaround[1] >>>>>> (exiting from the loader menu into the loader prompt, running ls or >>>>>> show, scrolling the result down and then executing boot) I found some >>>>>> time ago doesn't work anymore. After running boot/boot -s/selecting >>>>>> menu item, a hypervisor just shuts session down with the following >>>>>> message: ``The firmware encountered an unexpected exception. The virtual >>>>>> machine cannot boot.'' >>>>>> >>>>>> The virtual guests don't have any UART (even USB) serial devices in >>>>>> their settings. efi-show prints result similar to what Tomoaki got: >>>>>> >>>>>> OK efi-show -g global -v CounOut >>>>>> global NV,BS,RS ConOut = PciRoot(0x0)/Pci(0x2,0x0)/AcpiAdr(0x80014310) >>>>>> >>>>>> Undefining TERM_EMU doesn't help. I had completely removed CFLAGS >>>>>> assignment with TERM_EMU from stand/efi/libefi/Makefile and rebuilt >>>>>> kernel/world -- nothing changed. I don't define TERM_EMU in my >>>>>> make.conf or/and src.conf. >>>>>> >>>>>> Reverting this revision fix booting (and menu, of course). >>>>>> >>>>>> FreeBSD on physical hardware boots just fine with this revision, but has >>>>>> corrupted loader menu. >>>>>> >>>>>> Toomas, please help us to fix this. I can live with the broken menu, >>>>>> but I don't want to revert this revision every time I will upgrade my >>>>>> virtual machines after r359028 now. >>>>> >>>>> >>>>> Hi! >>>>> >>>>> The build, are you doing build with -DNO_CLEAN? or can you run make clean in stand and then build it again? Otherwise, if you can poke me on irc, I’d like to get to the bottom of this. >>>> Hello! >>>> >>>> I'm sorry, currently I have no access to either IRC, nor my build >>>> machine. Therefore, I can't show you the build log. NO_CLEAN -- no, I >>>> don't use it. What I've actually done regarding to testing TERM_EMU: I >>>> removed `CFLAGS+= -DTERM_EMU` (and the .if condition wrapping this line) >>>> from the Makefile, removed /usr/obj directory, and buildworld and >>>> buildkernel then. And then install rebuilt kernel/userland on a target >>>> machine. Nothing changed, but it should? >>> >>> >>> Please try r359099. Thanks, this fixed loader menu. At least on virtual machines. I couldn't check it on a physical one, because I failed to install graphics/drm-current-kmod kernel module from ports. But I think it will be ok there. >> >> Many thanks! Worked fine for me, at least buildworld after `make clean` >> on /usr/src/stand. >> >> >> A bit details: >> Cleaning /usr/src/stand before building itself didn't help. >> Updating to r359099 and later was mandatory. >> No VMs are tested, as I'm currently not running any VMs. >> >> >> For your further investigation, kenv output is like this: > > > This output is not from patched loader, is it? Could you mail me from latest — specifically, I’m expecting to see LINES and COLUMNS values. FreeBSD 13.0-CURRENT r359117 (VMware ESXi guest) shows: $ kenv | egrep "COLUMNS|LINES" COLUMNS="80" LINES="25" FreeBSD 13.0-CURRENT r359028 (physical machine) doesn't have that rows in kenv output at all. > > What seems to be the cause is, we allocate screen buffer for text, if that allocation does fail, we did abort efi_cons_init() and the putchar did switch to direct output without interpreting the esc sequences. Now the question would be, why we failed to allocate the buffer - we do have 64MB heap as default and console is initialized early… > > thanks, > toomas > >> >> === `kenv` output except hardware serial No. and UUID below === >> >> acpi.oem="LENOVO" >> acpi.revision="2" >> acpi.rsdp="0x000000004fd0e014" >> acpi.rsdt="0x000000004fd0c0c4" >> acpi.xsdt="0x000000004fd0c188" >> acpi.xsdt_length="36" >> bootenv_autolist="YES" >> bootenvs[0]="zfs:zsysS05/ROOT/head-r359007-boot1Rev6TA3" >> bootenvs[10]="zfs:zsysS05/ROOT/head-r358565-boot1Rev6TA3" >> bootenvs[11]="zfs:zsysS05/ROOT/" >> bootenvs[1]="zfs:zsysS05/ROOT/head-r359005-boot1Rev6TA3" >> bootenvs[2]="zfs:zsysS05/ROOT/head-r358989-boot1Rev6TA3" >> bootenvs[3]="zfs:zsysS05/ROOT/head-r358906-boot1Rev6TA3" >> bootenvs[4]="zfs:zsysS05/ROOT/head-r358872-boot1Rev6TA3" >> bootenvs[5]="zfs:zsysS05/ROOT/head-r358865-boot1Rev6TA3-2" >> bootenvs[6]="zfs:zsysS05/ROOT/head-r358827-boot1Rev6TA3" >> bootenvs[7]="zfs:zsysS05/ROOT/head-r358734-boot1Rev6TA3" >> bootenvs[8]="zfs:zsysS05/ROOT/head-r358729-boot1Rev6TA3" >> bootenvs[9]="zfs:zsysS05/ROOT/head-r358669-boot1Rev6TA3" >> bootenvs_count="12" >> bootfile="kernel" >> comconsole_pcidev="" >> comconsole_port="1016" >> comconsole_speed="9600" >> console="efi" >> currdev="zfs:zsysS05/ROOT/default:" >> efi-version="2.60" >> efi_max_resolution="2160p" >> hint.acpi.0.oem="LENOVO" >> hint.acpi.0.revision="2" >> hint.acpi.0.rsdp="0x000000004fd0e014" >> hint.acpi.0.rsdt="0x000000004fd0c0c4" >> hint.acpi.0.xsdt="0x000000004fd0c188" >> hint.acpi.0.xsdt_length="36" >> hint.acpi_throttle.0.disabled="1" >> hint.atkbd.0.at ="atkbdc" >> hint.atkbd.0.irq="1" >> hint.atkbdc.0.at ="isa" >> hint.atkbdc.0.port="0x060" >> hint.atrtc.0.at ="isa" >> hint.atrtc.0.irq="8" >> hint.atrtc.0.port="0x70" >> hint.attimer.0.at ="isa" >> hint.attimer.0.irq="0" >> hint.attimer.0.port="0x40" >> hint.fd.0.at ="fdc0" >> hint.fd.0.drive="0" >> hint.fd.1.at ="fdc0" >> hint.fd.1.drive="1" >> hint.fdc.0.at ="isa" >> hint.fdc.0.drq="2" >> hint.fdc.0.irq="6" >> hint.fdc.0.port="0x3F0" >> hint.p4tcc.0.disabled="1" >> hint.ppc.0.at ="isa" >> hint.ppc.0.irq="7" >> hint.psm.0.at ="atkbdc" >> hint.psm.0.irq="12" >> hint.sc.0.at ="isa" >> hint.sc.0.flags="0x100" >> hint.smbios.0.mem="0x4d580000" >> hint.uart.0.at ="isa" >> hint.uart.0.flags="0x10" >> hint.uart.0.irq="4" >> hint.uart.0.port="0x3F8" >> hint.uart.1.at ="isa" >> hint.uart.1.irq="3" >> hint.uart.1.port="0x2F8" >> hw.ata.atapi_dma="1" >> hw.ibrs_disable="0" >> hw.pci.allow_unsupported_io_range="1" >> hw.psm.elantech_support="1" >> hw.psm.trackpoint_support="1" >> kern.hz="8192" >> kern.ipc.semmni="40" >> kern.ipc.semmns="300" >> kern.ipc.shm_use_phys="1" >> kern.ipc.shmmni="1024" >> kern.ipc.shmseg="1024" >> kern.maxfiles="250000" >> kern.vty="vt" >> kernel="kernel" >> kernel_options="" >> kernel_path="/boot/kernel" >> kernelname="/boot/kernel/kernel" >> kernels="kernel kernel.old" >> kernels_autodetect="YES" >> loaddev="zfs:zsysS05/ROOT/default:" >> loader_conf_files="/boot/device.hints /boot/loader.conf /boot/loader.conf.local" >> machdep.mitigations.taa.enable="3" >> module_blacklist="drm drm2 radeonkms i915kms amdgpu" >> module_path="/boot/kernel;/boot/modules;/boot/dtb;/boot/dtb/overlays" >> net.graph.maxdata="65536" >> nextboot_conf="/boot/nextboot.conf" >> nextboot_enable="NO" >> script.lang="lua" >> smbios.bios.reldate="11/04/2019" >> smbios.bios.vendor="LENOVO" >> smbios.bios.version="N2CET48W (1.31 )" >> smbios.chassis.maker="LENOVO" >> smbios.chassis.serial="********" >> smbios.chassis.tag="No Asset Information" >> smbios.chassis.version="None" >> smbios.memory.enabled="33554432" >> smbios.planar.location="Not Available" >> smbios.planar.maker="LENOVO" >> smbios.planar.product="20M9CTO1WW" >> smbios.planar.serial="***********" >> smbios.planar.tag="Not Available" >> smbios.planar.version="SDK0J40697 WIN" >> smbios.socket.enabled="1" >> smbios.socket.populated="1" >> smbios.system.family="ThinkPad P52" >> smbios.system.maker="LENOVO" >> smbios.system.product="20M9CTO1WW" >> smbios.system.serial="********" >> smbios.system.sku="LENOVO_MT_20M9_BU_Think_FM_ThinkPad P52" >> smbios.system.uuid="********-****-****-****-************" >> smbios.system.version="ThinkPad P52" >> smbios.version="3.1" >> twiddle_divisor="1" >> verbose_loading="NO" >> vfs.root.mountfrom="zfs:zsysS05/ROOT/default" >> vfs.zfs.abd_chunk_size="1024" >> vfs.zfs.prefetch_disable="1" >> vm.pmap.pti="1" >> zfs_be_active="zfs:zsysS05/ROOT/default" >> zfs_be_currpage="1" >> zfs_be_root="zsysS05/ROOT" >> >> >> === `kenv` output except hardware serial No and UUID above === >> >> >>> >>> >>>> >>>>> >>>>> Regarding the issue with vm, I am afraid the roots are going much deeper there. I have not got to the exact cause (and therefore a fix), but the problem is not about this specific patch. The problem is about memory map, specifically one just before and after we switch off Boot Services. >>>> That's a very bad news for me. Looking at HEAD's commit list I hope >>>> that's a known problem? Or should I open a PR on bugs.FreeBSD.org >? >>> >>> >>> PR is always good idea. Finding the exact cause and getting sure fix is question of time. I have done quite amount of investigation, but I can not yet point the finger even as there is one known issue identified. *IF* I am correct about the issue, the fix will take some time as it is not too trivial. Francis Dupont created PR 244906 yesterday: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=244906 I just added a comment there. >>> >>> >>>> >>>> Moreover, I believe the next snapshot of the CURRENT (which will be made >>>> after r358989) made by the release team will be unbootable on VMware >>>> hypervisors. >>> >>> BIOS version is ok. >>> >>> rgds, >>> toomas >>> >>>> >>>>> >>>>> rgds, >>>>> toomas >>>>> >>>>> >>>>>> >>>>>> [1] >>>>>> https://old.reddit.com/r/freebsd/comments/drxqlm/failed_to_do_efi_boot_on_a_vmware_virtual_machine/f6om6p2/ >>> >>>>>>>>> >>>>>>>>> Not tried (not enough time for now as I'm mainly using stable/12), >>>>>>>>> but possibly calling efi_cons_probe() from efi_cons_init() would be >>>>>>>>> needed, as ome codes are moved from the latter to the former. >>>>>>>>> >>>>>>>>> >>>>>>>>>> Author: tsoome >>>>>>>>>> Date: Sat Mar 14 06:36:03 2020 >>>>>>>>>> New Revision: 358989 >>>>>>>>>> URL: https://svnweb.freebsd.org/changeset/base/358989 >>>>>>>>>> >>>>>>>>>> Log: >>>>>>>>>> loader: add comconsole implementation on top of SIO protocol >>>>>>>>>> >>>>>>>>>> Provide comconsole on top of SIO for arm platforms (x86 does use bios >>>>>>>>> version). >>>>>>>>>> >>>>>>>>>> Added: >>>>>>>>>> head/stand/efi/loader/efiserialio.c (contents, props changed) >>>>>>>>>> Modified: >>>>>>>>>> head/stand/efi/libefi/efi_console.c >>>>>>>>>> head/stand/efi/loader/arch/arm/Makefile.inc >>>>>>>>>> head/stand/efi/loader/arch/arm64/Makefile.inc >>>>>>>>>> head/stand/efi/loader/conf.c >>>>>>>>>> head/stand/efi/loader/main.c >>>>>>>>>> >>>>>>>>>> Modified: head/stand/efi/libefi/efi_console.c >>>>>>>>>> ============================================================================== >>>>>>>>>> --- head/stand/efi/libefi/efi_console.c Sat Mar 14 05:57:22 >>>>>>>>> 2020 (r358988) >>>>>>>>>> +++ head/stand/efi/libefi/efi_console.c >>>>>>>>> Sat Mar 14 06:36:03 2020 (r358989) >>>>>>>>>> @@ -377,9 +377,22 @@ efi_cons_respond(void *s __unused, const void *buf __u >>>>>>>>>> { >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> +/* >>>>>>>>>> + * Set up conin/conout/coninex to make sure we have input ready. >>>>>>>>>> + */ >>>>>>>>>> static void >>>>>>>>>> efi_cons_probe(struct console *cp) >>>>>>>>>> { >>>>>>>>>> + EFI_STATUS status; >>>>>>>>>> + >>>>>>>>>> + conout = ST->ConOut; >>>>>>>>>> + conin = ST->ConIn; >>>>>>>>>> + >>>>>>>>>> + status = BS->OpenProtocol(ST->ConsoleInHandle, >>>>>>>>> &simple_input_ex_guid, >>>>>>>>>> + (void **)&coninex, IH, NULL, >>>>>>>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); >>>>>>>>>> + if (status != EFI_SUCCESS) >>>>>>>>>> + coninex = NULL; >>>>>>>>>> + >>>>>>>>>> cp->c_flags |= C_PRESENTIN | C_PRESENTOUT; >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> @@ -889,15 +902,7 @@ efi_cons_init(int arg) >>>>>>>>>> if (conin != NULL) >>>>>>>>>> return (0); >>>>>>>>>> >>>>>>>>>> - conout = ST->ConOut; >>>>>>>>>> - conin = ST->ConIn; >>>>>>>>>> - >>>>>>>>>> conout->EnableCursor(conout, TRUE); >>>>>>>>>> - status = BS->OpenProtocol(ST->ConsoleInHandle, >>>>>>>>> &simple_input_ex_guid, >>>>>>>>>> - (void **)&coninex, IH, NULL, >>>>>>>>> EFI_OPEN_PROTOCOL_GET_PROTOCOL); >>>>>>>>>> - if (status != EFI_SUCCESS) >>>>>>>>>> - coninex = NULL; >>>>>>>>>> - >>>>>>>>>> if (efi_cons_update_mode()) >>>>>>>>>> return (0); >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Modified: head/stand/efi/loader/arch/arm/Makefile.inc >>>>>>>>>> ============================================================================== >>>>>>>>>> --- head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 >>>>>>>>> 05:57:22 2020 (r358988) >>>>>>>>>> +++ head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 06:36:03 >>>>>>>>> 2020 (r358989) >>>>>>>>>> @@ -1,6 +1,7 @@ >>>>>>>>>> # $FreeBSD$ >>>>>>>>>> >>>>>>>>>> SRCS+= exec.c \ >>>>>>>>>> + efiserialio.c \ >>>>>>>>>> start.S >>>>>>>>>> >>>>>>>>>> HAVE_FDT=yes >>>>>>>>> >>>>>>>>> (Snip) >>>>>>>>> >>>>>>>>>> @@ -930,7 +936,6 @@ main(int argc, CHAR16 *argv[]) >>>>>>>>>> if (!has_kbd && (howto & RB_PROBE)) >>>>>>>>>> howto |= RB_SERIAL | RB_MULTIPLE; >>>>>>>>>> howto &= ~RB_PROBE; >>>>>>>>>> - uhowto = parse_uefi_con_out(); >>>>>>>>>> >>>>>>>>>> /* >>>>>>>>>> * Read additional environment variables from the boot device's >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Tomoaki AOKI >>> >> >> >> -- >> Tomoaki AOKI > > > _______________________________________________ > svn-src-head@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/svn-src-head > To unsubscribe, send any mail to "svn-src-head-unsubscribe@freebsd.org" > From owner-svn-src-head@freebsd.org Fri Mar 20 15:16:05 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id ECEEA26A112; Fri, 20 Mar 2020 15:16:05 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kS5x1Kwcz4bFJ; Fri, 20 Mar 2020 15:16:04 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6C75D25663; Fri, 20 Mar 2020 15:07:26 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KF7QQ2029318; Fri, 20 Mar 2020 15:07:26 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KF7QvF029317; Fri, 20 Mar 2020 15:07:26 GMT (envelope-from imp@FreeBSD.org) Message-Id: <202003201507.02KF7QvF029317@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Fri, 20 Mar 2020 15:07:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359165 - in head/sys/compat/linuxkpi/common: include/linux src X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: in head/sys/compat/linuxkpi/common: include/linux src X-SVN-Commit-Revision: 359165 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 15:16:06 -0000 Author: imp Date: Fri Mar 20 15:07:25 2020 New Revision: 359165 URL: https://svnweb.freebsd.org/changeset/base/359165 Log: Implement a workaround for kms-drm modules pci_iov_if.h was added to pci.h, but none of the kms-drm branches have that. Rather than play whack a mole with the branches, move its inclusion to linux_pci.c which is the only part of the code that needs it now. Longer term, other solutions will be needed, but this gives us time to get those deployed on all the supported versions. Modified: head/sys/compat/linuxkpi/common/include/linux/pci.h head/sys/compat/linuxkpi/common/src/linux_pci.c Modified: head/sys/compat/linuxkpi/common/include/linux/pci.h ============================================================================== --- head/sys/compat/linuxkpi/common/include/linux/pci.h Fri Mar 20 15:07:21 2020 (r359164) +++ head/sys/compat/linuxkpi/common/include/linux/pci.h Fri Mar 20 15:07:25 2020 (r359165) @@ -40,10 +40,10 @@ #include #include #include +#include #include #include #include -#include #include Modified: head/sys/compat/linuxkpi/common/src/linux_pci.c ============================================================================== --- head/sys/compat/linuxkpi/common/src/linux_pci.c Fri Mar 20 15:07:21 2020 (r359164) +++ head/sys/compat/linuxkpi/common/src/linux_pci.c Fri Mar 20 15:07:25 2020 (r359165) @@ -38,6 +38,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -45,6 +46,10 @@ __FBSDID("$FreeBSD$"); #include #include + +#include +#include +#include #include #include From owner-svn-src-head@freebsd.org Fri Mar 20 15:50:38 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7FECA26AB11; Fri, 20 Mar 2020 15:50:38 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kSsp2w9bz4G0J; Fri, 20 Mar 2020 15:50:38 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5F55E25E18; Fri, 20 Mar 2020 15:50:38 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KFocuD053705; Fri, 20 Mar 2020 15:50:38 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KFocgG053704; Fri, 20 Mar 2020 15:50:38 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003201550.02KFocgG053704@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 20 Mar 2020 15:50:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359166 - head/contrib/elftoolchain/elfcopy X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/contrib/elftoolchain/elfcopy X-SVN-Commit-Revision: 359166 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 15:50:38 -0000 Author: emaste Date: Fri Mar 20 15:50:37 2020 New Revision: 359166 URL: https://svnweb.freebsd.org/changeset/base/359166 Log: objcopy: add new sections also when there is no .shstrtab Previously objcopy (elfcopy) --add-sections inserted new sections before .shstrtab, but omitted them if there was no .shstrtab. Now, after processing existing sections add new sections if they were not yet added. PR: 241437 Reported by: arrowd Submitted by: Tiger Gao Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D23571 Modified: head/contrib/elftoolchain/elfcopy/sections.c Modified: head/contrib/elftoolchain/elfcopy/sections.c ============================================================================== --- head/contrib/elftoolchain/elfcopy/sections.c Fri Mar 20 15:07:25 2020 (r359165) +++ head/contrib/elftoolchain/elfcopy/sections.c Fri Mar 20 15:50:37 2020 (r359166) @@ -28,6 +28,7 @@ #include #include #include +#include #include #include #include @@ -341,6 +342,7 @@ create_scn(struct elfcopy *ecp) size_t indx; uint64_t oldndx, newndx; int elferr, sec_flags, reorder; + bool sections_added; /* * Insert a pseudo section that contains the ELF header @@ -364,6 +366,7 @@ create_scn(struct elfcopy *ecp) errx(EXIT_FAILURE, "elf_getshstrndx failed: %s", elf_errmsg(-1)); + sections_added = false; reorder = 0; is = NULL; while ((is = elf_nextscn(ecp->ein, is)) != NULL) { @@ -438,12 +441,14 @@ create_scn(struct elfcopy *ecp) oldndx = newndx = SHN_UNDEF; if (strcmp(name, ".symtab") != 0 && strcmp(name, ".strtab") != 0) { + /* Add new sections before .shstrtab if we have one. */ if (!strcmp(name, ".shstrtab")) { /* * Add sections specified by --add-section and * gnu debuglink. we want these sections have * smaller index than .shstrtab section. */ + sections_added = true; if (ecp->debuglink != NULL) add_gnu_debuglink(ecp); if (ecp->flags & SEC_ADD) @@ -504,6 +509,12 @@ create_scn(struct elfcopy *ecp) ecp->strtab = s; insert_to_sec_list(ecp, s, 0); + } + if (!sections_added) { + if (ecp->debuglink != NULL) + add_gnu_debuglink(ecp); + if (ecp->flags & SEC_ADD) + insert_sections(ecp); } elferr = elf_errno(); if (elferr != 0) From owner-svn-src-head@freebsd.org Fri Mar 20 16:00:26 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id C4D4526ADE5; Fri, 20 Mar 2020 16:00:26 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kT564r5kz4S1l; Fri, 20 Mar 2020 16:00:26 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8900125FE0; Fri, 20 Mar 2020 16:00:26 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KG0QfM059998; Fri, 20 Mar 2020 16:00:26 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KG0Q7C059997; Fri, 20 Mar 2020 16:00:26 GMT (envelope-from imp@FreeBSD.org) Message-Id: <202003201600.02KG0Q7C059997@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Fri, 20 Mar 2020 16:00:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359167 - head/share/mk X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: head/share/mk X-SVN-Commit-Revision: 359167 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 16:00:26 -0000 Author: imp Date: Fri Mar 20 16:00:26 2020 New Revision: 359167 URL: https://svnweb.freebsd.org/changeset/base/359167 Log: Revert r359164. This was in my staging tree by mistake when I pushed. Revert until it's ready. Modified: head/share/mk/src.opts.mk Modified: head/share/mk/src.opts.mk ============================================================================== --- head/share/mk/src.opts.mk Fri Mar 20 15:50:37 2020 (r359166) +++ head/share/mk/src.opts.mk Fri Mar 20 16:00:26 2020 (r359167) @@ -256,6 +256,11 @@ __T=${TARGET_ARCH} .else __T=${MACHINE_ARCH} .endif +.if defined(TARGET) +__TT=${TARGET} +.else +__TT=${MACHINE} +.endif # All supported backends for LLVM_TARGET_XXX __LLVM_TARGETS= \ @@ -265,13 +270,13 @@ __LLVM_TARGETS= \ powerpc \ riscv \ x86 -__LLVM_TARGET_FILT= C/(amd64|i386)/x86/:S/powerpc64/powerpc/:S/powerpcspe/powerpc/ +__LLVM_TARGET_FILT= C/(amd64|i386)/x86/:S/arm64/aarch64/:S/powerpc64/powerpc/ .for __llt in ${__LLVM_TARGETS} # Default enable the given TARGET's LLVM_TARGET support -.if ${__T:${__LLVM_TARGET_FILT}} == ${__llt} +.if ${__TT:${__LLVM_TARGET_FILT}} == ${__llt} __DEFAULT_YES_OPTIONS+= LLVM_TARGET_${__llt:${__LLVM_TARGET_FILT}:tu} # aarch64 needs arm for -m32 support. -.elif ${__T} == "aarch64" && ${__llt:Marm*} != "" +.elif ${__TT} == "arm64" && ${__llt} == "arm" __DEFAULT_DEPENDENT_OPTIONS+= LLVM_TARGET_ARM/LLVM_TARGET_AARCH64 # Default the rest of the LLVM_TARGETs to the value of MK_LLVM_TARGET_ALL. .else @@ -283,7 +288,7 @@ __DEFAULT_NO_OPTIONS+=LLVM_TARGET_BPF .include -.if ${__T:Mmips*} == "" +.if ${__TT} != "mips" # Clang is installed as the default /usr/bin/cc. __DEFAULT_YES_OPTIONS+=CLANG_BOOTSTRAP CLANG_IS_CC .else @@ -302,7 +307,7 @@ __DEFAULT_NO_OPTIONS+=BINUTILS_BOOTSTRAP .if ${__T:Mriscv*} != "" BROKEN_OPTIONS+=OFED .endif -.if ${__T:Mmips*} != "mips" && ${__T} != "powerpc" && ${__T} != "powerpcspe" +.if ${__TT} != "mips" && ${__T} != "powerpc" && ${__T} != "powerpcspe" __DEFAULT_YES_OPTIONS+=LLD_BOOTSTRAP LLD_IS_LD .else __DEFAULT_NO_OPTIONS+=LLD_BOOTSTRAP LLD_IS_LD From owner-svn-src-head@freebsd.org Fri Mar 20 16:02:46 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7FEC926AFCE; Fri, 20 Mar 2020 16:02:46 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kT7p2vWDz4TLn; Fri, 20 Mar 2020 16:02:46 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 45FD02619B; Fri, 20 Mar 2020 16:02:46 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KG2kMa065295; Fri, 20 Mar 2020 16:02:46 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KG2kKW065294; Fri, 20 Mar 2020 16:02:46 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003201602.02KG2kKW065294@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 20 Mar 2020 16:02:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359168 - head X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head X-SVN-Commit-Revision: 359168 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 16:02:46 -0000 Author: emaste Date: Fri Mar 20 16:02:45 2020 New Revision: 359168 URL: https://svnweb.freebsd.org/changeset/base/359168 Log: remove ancient pre-2000 ObsoleteFiles.inc entries We support 10.3 as the minimum version to install from, which was released in the mid-2010s. There's a lot of ancient ObsoleteFiles.inc history that serves no purpose today; start by removing entries from 1999 and earlier. Modified: head/ObsoleteFiles.inc Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Fri Mar 20 16:00:26 2020 (r359167) +++ head/ObsoleteFiles.inc Fri Mar 20 16:02:45 2020 (r359168) @@ -9809,49 +9809,6 @@ OLD_FILES+=usr/bin/miniperl OLD_FILES+=usr/bin/sperl # 200001XX OLD_FILES+=usr/sbin/apmconf -# 199911XX -OLD_FILES+=usr/sbin/ipfstat -OLD_FILES+=usr/sbin/ipmon -OLD_FILES+=usr/sbin/ipnat -OLD_FILES+=usr/sbin/bad144 -OLD_FILES+=usr/sbin/wormcontrol -OLD_FILES+=usr/sbin/named-bootconf -OLD_FILES+=usr/sbin/kvm_mkdb -OLD_FILES+=usr/sbin/keyadmin -# 199909XX -OLD_FILES+=usr/lib/libdesrypt_p.a -OLD_FILES+=sbin/ft -# 199903XX -OLD_FILES+=sbin/modload -OLD_FILES+=sbin/modunload -OLD_FILES+=usr/sbin/natd -# 199812XX -OLD_FILES+=sbin/dset -# 199809XX -OLD_FILES+=sbin/scsi -OLD_FILES+=sbin/scsiformat -OLD_FILES+=usr/sbin/ncrcontrol -OLD_FILES+=usr/sbin/tickadj -# 199806XX -OLD_FILES+=usr/sbin/mkdosfs -# 199801XX -OLD_FILES+=sbin/mount_lfs -OLD_FILES+=sbin/newlfs -OLD_FILES+=sbin/dumplfs -OLD_FILES+=usr/sbin/qcamcontrol -OLD_FILES+=usr/sbin/supscan -# 1997XXXX -OLD_FILES+=usr/sbin/sysctl -OLD_FILES+=usr/sbin/ctm_scan -OLD_FILES+=usr/sbin/addgroup -OLD_FILES+=usr/sbin/rmgroup -# 1996XXXX -OLD_FILES+=sbin/rdisc -OLD_FILES+=usr/sbin/cdplay -OLD_FILES+=usr/sbin/supfilesrv -OLD_FILES+=usr/sbin/routed -OLD_FILES+=usr/sbin/lsdev -OLD_FILES+=usr/sbin/yppasswdd ## unsorted # do we still support aout builds? #OLD_FILES+=usr/lib/aout/c++rt0.o @@ -10798,10 +10755,6 @@ OLD_LIBS+=usr/lib/libtermcap.so.2 OLD_LIBS+=usr/lib/libutil.so.2 OLD_LIBS+=usr/lib/libvgl.so.1 OLD_LIBS+=usr/lib/libwrap.so.2 -# 19991216 -OLD_FILES+=usr/sbin/xntpdc -# 199909XX -OLD_LIBS+=usr/lib/libc_r.so.3 # ??? OLD_LIBS+=usr/lib/libarchive.so.2 OLD_LIBS+=usr/lib/libbsnmp.so.1 From owner-svn-src-head@freebsd.org Fri Mar 20 16:15:46 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id D74F226B60F; Fri, 20 Mar 2020 16:15:46 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kTQp5SJmz3CmW; Fri, 20 Mar 2020 16:15:46 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B691726384; Fri, 20 Mar 2020 16:15:46 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KGFkmn071536; Fri, 20 Mar 2020 16:15:46 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KGFkap071532; Fri, 20 Mar 2020 16:15:46 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003201615.02KGFkap071532@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 20 Mar 2020 16:15:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359169 - in head/sys/cam: ctl scsi X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: in head/sys/cam: ctl scsi X-SVN-Commit-Revision: 359169 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 16:15:46 -0000 Author: emaste Date: Fri Mar 20 16:15:45 2020 New Revision: 359169 URL: https://svnweb.freebsd.org/changeset/base/359169 Log: sys/cam: remove doubled ;s Modified: head/sys/cam/ctl/ctl.c head/sys/cam/scsi/scsi_all.c head/sys/cam/scsi/scsi_da.c Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Fri Mar 20 16:02:45 2020 (r359168) +++ head/sys/cam/ctl/ctl.c Fri Mar 20 16:15:45 2020 (r359169) @@ -13265,7 +13265,7 @@ ctl_done_timer_wakeup(void *arg) void ctl_serseq_done(union ctl_io *io) { - struct ctl_lun *lun = CTL_LUN(io);; + struct ctl_lun *lun = CTL_LUN(io); if (lun->be_lun == NULL || lun->be_lun->serseq == CTL_LUN_SERSEQ_OFF) Modified: head/sys/cam/scsi/scsi_all.c ============================================================================== --- head/sys/cam/scsi/scsi_all.c Fri Mar 20 16:02:45 2020 (r359168) +++ head/sys/cam/scsi/scsi_all.c Fri Mar 20 16:15:45 2020 (r359169) @@ -7112,7 +7112,7 @@ scsi_attrib_vendser_sbuf(struct sbuf *sb, struct scsi_ case SCSI_ATTR_OUTPUT_NONASCII_ESC: default: strvis_flags = CAM_STRVIS_FLAG_NONASCII_ESC; - break;; + break; } cam_strvis_sbuf(sb, vendser->vendor, sizeof(vendser->vendor), strvis_flags); Modified: head/sys/cam/scsi/scsi_da.c ============================================================================== --- head/sys/cam/scsi/scsi_da.c Fri Mar 20 16:02:45 2020 (r359168) +++ head/sys/cam/scsi/scsi_da.c Fri Mar 20 16:15:45 2020 (r359169) @@ -3973,7 +3973,7 @@ out: static void da_delete_unmap(struct cam_periph *periph, union ccb *ccb, struct bio *bp) { - struct da_softc *softc = (struct da_softc *)periph->softc;; + struct da_softc *softc = (struct da_softc *)periph->softc; struct bio *bp1; uint8_t *buf = softc->unmap_buf; struct scsi_unmap_desc *d = (void *)&buf[UNMAP_HEAD_SIZE]; From owner-svn-src-head@freebsd.org Fri Mar 20 16:17:55 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4F94126B83E; Fri, 20 Mar 2020 16:17:55 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kTTH0YL2z3FCF; Fri, 20 Mar 2020 16:17:55 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 06AE526385; Fri, 20 Mar 2020 16:17:55 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KGHsm4071664; Fri, 20 Mar 2020 16:17:54 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KGHs4Q071663; Fri, 20 Mar 2020 16:17:54 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202003201617.02KGHs4Q071663@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Fri, 20 Mar 2020 16:17:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359170 - in head/sys: kern sys X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: in head/sys: kern sys X-SVN-Commit-Revision: 359170 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 16:17:55 -0000 Author: markj Date: Fri Mar 20 16:17:54 2020 New Revision: 359170 URL: https://svnweb.freebsd.org/changeset/base/359170 Log: Remove UNP_NASCENT, reverting r303855. unp_connectat() no longer holds the link lock across calls to sonewconn(), so the recursion described in r303855 can no longer occur. No functional change intended. Tested by: pho MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Modified: head/sys/kern/uipc_usrreq.c head/sys/sys/unpcb.h Modified: head/sys/kern/uipc_usrreq.c ============================================================================== --- head/sys/kern/uipc_usrreq.c Fri Mar 20 16:15:45 2020 (r359169) +++ head/sys/kern/uipc_usrreq.c Fri Mar 20 16:17:54 2020 (r359170) @@ -526,8 +526,6 @@ uipc_attach(struct socket *so, int proto, struct threa unp->unp_socket = so; so->so_pcb = unp; unp->unp_refcount = 1; - if (so->so_listen != NULL) - unp->unp_flags |= UNP_NASCENT; if ((locked = UNP_LINK_WOWNED()) == false) UNP_LINK_WLOCK(); @@ -800,9 +798,6 @@ uipc_detach(struct socket *so) UNP_PCB_UNLOCK(unp); goto restart; } - if ((unp->unp_flags & UNP_NASCENT) != 0) { - goto teardown; - } if ((vp = unp->unp_vnode) != NULL) { VOP_UNP_DETACH(vp); unp->unp_vnode = NULL; @@ -844,7 +839,6 @@ uipc_detach(struct socket *so) freeunp = unp_pcb_rele(unp); MPASS(freeunp == 0); local_unp_rights = unp_rights; -teardown: unp->unp_socket->so_pcb = NULL; saved_unp_addr = unp->unp_addr; unp->unp_addr = NULL; @@ -1685,7 +1679,6 @@ unp_connect2(struct socket *so, struct socket *so2, in if (so2->so_type != so->so_type) return (EPROTOTYPE); - unp2->unp_flags &= ~UNP_NASCENT; unp->unp_conn = unp2; unp_pcb_hold(unp2); unp_pcb_hold(unp); Modified: head/sys/sys/unpcb.h ============================================================================== --- head/sys/sys/unpcb.h Fri Mar 20 16:15:45 2020 (r359169) +++ head/sys/sys/unpcb.h Fri Mar 20 16:17:54 2020 (r359170) @@ -110,7 +110,6 @@ struct unpcb { */ #define UNP_CONNECTING 0x010 /* Currently connecting. */ #define UNP_BINDING 0x020 /* Currently binding. */ -#define UNP_NASCENT 0x040 /* Newborn child socket. */ /* * Flags in unp_gcflag. From owner-svn-src-head@freebsd.org Fri Mar 20 16:18:55 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4191026B8FC; Fri, 20 Mar 2020 16:18:55 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kTVR15wYz3GMt; Fri, 20 Mar 2020 16:18:55 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 20F3D26386; Fri, 20 Mar 2020 16:18:55 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KGIsSA071754; Fri, 20 Mar 2020 16:18:54 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KGIsux071753; Fri, 20 Mar 2020 16:18:54 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202003201618.02KGIsux071753@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Fri, 20 Mar 2020 16:18:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359171 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 359171 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 16:18:55 -0000 Author: markj Date: Fri Mar 20 16:18:54 2020 New Revision: 359171 URL: https://svnweb.freebsd.org/changeset/base/359171 Log: Simplify uipc_detach() slightly. Remove a goto and an unneeded local variable, and fix style. No functional change intended. Tested by: pho MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Modified: head/sys/kern/uipc_usrreq.c Modified: head/sys/kern/uipc_usrreq.c ============================================================================== --- head/sys/kern/uipc_usrreq.c Fri Mar 20 16:17:54 2020 (r359170) +++ head/sys/kern/uipc_usrreq.c Fri Mar 20 16:18:54 2020 (r359171) @@ -765,7 +765,6 @@ uipc_detach(struct socket *so) { struct unpcb *unp, *unp2; struct mtx *vplock; - struct sockaddr_un *saved_unp_addr; struct vnode *vp; int freeunp, local_unp_rights; @@ -791,8 +790,7 @@ uipc_detach(struct socket *so) mtx_lock(vplock); } UNP_PCB_LOCK(unp); - if (unp->unp_vnode != vp && - unp->unp_vnode != NULL) { + if (unp->unp_vnode != vp && unp->unp_vnode != NULL) { if (vplock) mtx_unlock(vplock); UNP_PCB_UNLOCK(unp); @@ -805,21 +803,20 @@ uipc_detach(struct socket *so) if (__predict_false(unp == unp->unp_conn)) { unp_disconnect(unp, unp); unp2 = NULL; - goto connect_self; + } else { + if ((unp2 = unp->unp_conn) != NULL) { + unp_pcb_owned_lock2(unp, unp2, freeunp); + if (freeunp) + unp2 = NULL; + } + unp_pcb_hold(unp); + if (unp2 != NULL) { + unp_pcb_hold(unp2); + unp_disconnect(unp, unp2); + if (unp_pcb_rele(unp2) == 0) + UNP_PCB_UNLOCK(unp2); + } } - if ((unp2 = unp->unp_conn) != NULL) { - unp_pcb_owned_lock2(unp, unp2, freeunp); - if (freeunp) - unp2 = NULL; - } - unp_pcb_hold(unp); - if (unp2 != NULL) { - unp_pcb_hold(unp2); - unp_disconnect(unp, unp2); - if (unp_pcb_rele(unp2) == 0) - UNP_PCB_UNLOCK(unp2); - } - connect_self: UNP_PCB_UNLOCK(unp); UNP_REF_LIST_LOCK(); while (!LIST_EMPTY(&unp->unp_refs)) { @@ -840,13 +837,10 @@ uipc_detach(struct socket *so) MPASS(freeunp == 0); local_unp_rights = unp_rights; unp->unp_socket->so_pcb = NULL; - saved_unp_addr = unp->unp_addr; - unp->unp_addr = NULL; unp->unp_socket = NULL; - freeunp = unp_pcb_rele(unp); - if (saved_unp_addr != NULL) - free(saved_unp_addr, M_SONAME); - if (!freeunp) + free(unp->unp_addr, M_SONAME); + unp->unp_addr = NULL; + if (!unp_pcb_rele(unp)) UNP_PCB_UNLOCK(unp); if (vp) { mtx_unlock(vplock); From owner-svn-src-head@freebsd.org Fri Mar 20 16:24:25 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7CAF826BC33; Fri, 20 Mar 2020 16:24:25 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kTcn1ZhJz3PsL; Fri, 20 Mar 2020 16:24:25 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1E38426548; Fri, 20 Mar 2020 16:24:24 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KGONIr078045; Fri, 20 Mar 2020 16:24:23 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KGONh9078044; Fri, 20 Mar 2020 16:24:23 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202003201624.02KGONh9078044@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Fri, 20 Mar 2020 16:24:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359173 - head/contrib/elftoolchain/libpe X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: head/contrib/elftoolchain/libpe X-SVN-Commit-Revision: 359173 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 16:24:25 -0000 Author: markj Date: Fri Mar 20 16:24:23 2020 New Revision: 359173 URL: https://svnweb.freebsd.org/changeset/base/359173 Log: libpe: Avoid a potential use-after-free in pe_update_symtab(). This function appears to be unused within FreeBSD and ELFToolChain. CID: 1418982 MFC after: 1 week Sponsored by: The FreeBSD Foundation Modified: head/contrib/elftoolchain/libpe/pe_symtab.c Modified: head/contrib/elftoolchain/libpe/pe_symtab.c ============================================================================== --- head/contrib/elftoolchain/libpe/pe_symtab.c Fri Mar 20 16:24:06 2020 (r359172) +++ head/contrib/elftoolchain/libpe/pe_symtab.c Fri Mar 20 16:24:23 2020 (r359173) @@ -33,7 +33,7 @@ ELFTC_VCSID("$Id: pe_symtab.c 3312 2016-01-10 09:23:51 int pe_update_symtab(PE *pe, char *symtab, size_t sz, unsigned int nsym) { - PE_Scn *ps; + PE_Scn *ps, *pstmp; PE_SecBuf *sb; PE_SecHdr *sh; @@ -48,7 +48,7 @@ pe_update_symtab(PE *pe, char *symtab, size_t sz, unsi } /* Remove the old symbol table. */ - STAILQ_FOREACH(ps, &pe->pe_scn, ps_next) { + STAILQ_FOREACH_SAFE(ps, &pe->pe_scn, ps_next, pstmp) { if (ps->ps_ndx == 0xFFFFFFFFU) libpe_release_scn(ps); } From owner-svn-src-head@freebsd.org Fri Mar 20 16:24:41 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 853CD26BC70; Fri, 20 Mar 2020 16:24:41 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kTd52xlwz3QCQ; Fri, 20 Mar 2020 16:24:41 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1A43026549; Fri, 20 Mar 2020 16:24:41 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KGOeR3078100; Fri, 20 Mar 2020 16:24:40 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KGOePY078099; Fri, 20 Mar 2020 16:24:40 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202003201624.02KGOePY078099@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Fri, 20 Mar 2020 16:24:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359174 - head/contrib/elftoolchain/readelf X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: head/contrib/elftoolchain/readelf X-SVN-Commit-Revision: 359174 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 16:24:41 -0000 Author: markj Date: Fri Mar 20 16:24:40 2020 New Revision: 359174 URL: https://svnweb.freebsd.org/changeset/base/359174 Log: readelf: Avoid leaking ELF descriptors for archive entries. CID: 1292494 MFC after: 1 week Sponsored by: The FreeBSD Foundation Modified: head/contrib/elftoolchain/readelf/readelf.c Modified: head/contrib/elftoolchain/readelf/readelf.c ============================================================================== --- head/contrib/elftoolchain/readelf/readelf.c Fri Mar 20 16:24:23 2020 (r359173) +++ head/contrib/elftoolchain/readelf/readelf.c Fri Mar 20 16:24:40 2020 (r359174) @@ -7256,6 +7256,7 @@ dump_ar(struct readelf *re, int fd) } printf("Binary %s(%s) contains:\n", re->filename, arhdr->ar_name); + elf_end(e); } printf("\t%s\n", arsym[i].as_name); } From owner-svn-src-head@freebsd.org Fri Mar 20 16:24:57 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 1F18626BCD0; Fri, 20 Mar 2020 16:24:57 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kTdL4xy8z3QQ9; Fri, 20 Mar 2020 16:24:54 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B24092654A; Fri, 20 Mar 2020 16:24:53 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KGOrdh078155; Fri, 20 Mar 2020 16:24:53 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KGOrAT078154; Fri, 20 Mar 2020 16:24:53 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202003201624.02KGOrAT078154@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Fri, 20 Mar 2020 16:24:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359175 - head/contrib/elftoolchain/readelf X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: head/contrib/elftoolchain/readelf X-SVN-Commit-Revision: 359175 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 16:24:57 -0000 Author: markj Date: Fri Mar 20 16:24:53 2020 New Revision: 359175 URL: https://svnweb.freebsd.org/changeset/base/359175 Log: readelf: Fix another instance of the leak mentioned in r357542. CID: 1292493 MFC after: 1 week Sponsored by: The FreeBSD Foundation Modified: head/contrib/elftoolchain/readelf/readelf.c Modified: head/contrib/elftoolchain/readelf/readelf.c ============================================================================== --- head/contrib/elftoolchain/readelf/readelf.c Fri Mar 20 16:24:40 2020 (r359174) +++ head/contrib/elftoolchain/readelf/readelf.c Fri Mar 20 16:24:53 2020 (r359175) @@ -6065,6 +6065,7 @@ dump_dwarf_frame_regtable(struct readelf *re, Dwarf_Fd for (; cur_pc < end_pc; cur_pc++) { if (dwarf_get_fde_info_for_all_regs(fde, cur_pc, &rt, &row_pc, &de) != DW_DLV_OK) { + free(vec); warnx("dwarf_get_fde_info_for_all_regs failed: %s\n", dwarf_errmsg(de)); return (-1); From owner-svn-src-head@freebsd.org Fri Mar 20 16:25:13 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 82D2326BD22; Fri, 20 Mar 2020 16:25:13 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kTdg34ghz3QdW; Fri, 20 Mar 2020 16:25:09 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id DF3302654B; Fri, 20 Mar 2020 16:25:06 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KGP6jF078235; Fri, 20 Mar 2020 16:25:06 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KGP6Wf078234; Fri, 20 Mar 2020 16:25:06 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202003201625.02KGP6Wf078234@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Fri, 20 Mar 2020 16:25:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359176 - head/contrib/elftoolchain/libelftc X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: head/contrib/elftoolchain/libelftc X-SVN-Commit-Revision: 359176 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 16:25:13 -0000 Author: markj Date: Fri Mar 20 16:25:06 2020 New Revision: 359176 URL: https://svnweb.freebsd.org/changeset/base/359176 Log: libelftc: Fix a memory leak in cpp_demangle_read_type(). CID: 1305425 MFC after: 1 week Sponsored by: The FreeBSD Foundation Modified: head/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c Modified: head/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c ============================================================================== --- head/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c Fri Mar 20 16:24:53 2020 (r359175) +++ head/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c Fri Mar 20 16:25:06 2020 (r359176) @@ -2912,7 +2912,7 @@ again: if (len <= 0) goto clean; if (!vector_str_push(&v.ext_name, ddata->cur, len)) - return (0); + goto clean; ddata->cur += len; if (!vector_type_qualifier_push(&v, TYPE_EXT)) goto clean; From owner-svn-src-head@freebsd.org Fri Mar 20 16:25:12 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 1380D26BD1C; Fri, 20 Mar 2020 16:25:12 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kTdg39nZz3Qdj; Fri, 20 Mar 2020 16:25:09 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 64F842654C; Fri, 20 Mar 2020 16:25:07 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KGP7Ok078269; Fri, 20 Mar 2020 16:25:07 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KGP7Q2078268; Fri, 20 Mar 2020 16:25:07 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003201625.02KGP7Q2078268@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 20 Mar 2020 16:25:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359177 - head X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head X-SVN-Commit-Revision: 359177 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 16:25:12 -0000 Author: emaste Date: Fri Mar 20 16:25:06 2020 New Revision: 359177 URL: https://svnweb.freebsd.org/changeset/base/359177 Log: ObsoleteFiles.inc: add blank line between some recent entries We recently switched to including a blank line between ObsoleteFiles.inc entries. I missed this when adding GCC 4.2.1 (because the change was prepared months ago in a WIP tree); add a space for GCC 4.2.1 now, as well as for the other entry after the switch. Modified: head/ObsoleteFiles.inc Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Fri Mar 20 16:25:06 2020 (r359176) +++ head/ObsoleteFiles.inc Fri Mar 20 16:25:06 2020 (r359177) @@ -299,6 +299,7 @@ OLD_FILES+=usr/share/man/man8/fsinfo.8.gz OLD_FILES+=usr/share/man/man8/hlfsd.8.gz OLD_FILES+=usr/share/man/man8/mk-amd-map.8.gz OLD_FILES+=usr/share/man/man8/wire-test.8.gz + # 20200301: bktr removed OLD_DIRS+=usr/include/dev/bktr OLD_FILES+=usr/include/dev/bktr/ioctl_bktr.h @@ -309,6 +310,7 @@ OLD_FILES+=usr/include/machine/ioctl_bktr.h OLD_FILES+=usr/include/machine/ioctl_meteor.h .endif OLD_FILES+=usr/share/man/man4/bktr.4.gz + # 20200229: GCC 4.2.1 removed .if !defined(WITH_PORT_BASE_GCC) OLD_FILES+=usr/bin/g++ From owner-svn-src-head@freebsd.org Fri Mar 20 16:31:07 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 14DDC26BFC8; Fri, 20 Mar 2020 16:31:07 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kTmS6qyZz44fF; Fri, 20 Mar 2020 16:31:04 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 897BE26546; Fri, 20 Mar 2020 16:24:06 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KGO6Df077991; Fri, 20 Mar 2020 16:24:06 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KGO6pk077990; Fri, 20 Mar 2020 16:24:06 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202003201624.02KGO6pk077990@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Fri, 20 Mar 2020 16:24:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359172 - head/contrib/elftoolchain/libdwarf X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: head/contrib/elftoolchain/libdwarf X-SVN-Commit-Revision: 359172 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 16:31:07 -0000 Author: markj Date: Fri Mar 20 16:24:06 2020 New Revision: 359172 URL: https://svnweb.freebsd.org/changeset/base/359172 Log: libdwarf: Make an out-pointer assignment unconditional. There is no reason for diep to ever be NULL, since in that case we would simply be leaking memory. CID: 1418801 MFC after: 1 week Sponsored by: The FreeBSD Foundation Modified: head/contrib/elftoolchain/libdwarf/libdwarf_die.c Modified: head/contrib/elftoolchain/libdwarf/libdwarf_die.c ============================================================================== --- head/contrib/elftoolchain/libdwarf/libdwarf_die.c Fri Mar 20 16:18:54 2020 (r359171) +++ head/contrib/elftoolchain/libdwarf/libdwarf_die.c Fri Mar 20 16:24:06 2020 (r359172) @@ -70,8 +70,7 @@ _dwarf_die_add(Dwarf_CU cu, uint64_t offset, uint64_t die->die_cu = cu; die->die_dbg = cu->cu_dbg; - if (diep != NULL) - *diep = die; + *diep = die; return (DW_DLE_NONE); } From owner-svn-src-head@freebsd.org Fri Mar 20 16:50:21 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 8A3F526C816; Fri, 20 Mar 2020 16:50:21 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kVBj3By1z4S0d; Fri, 20 Mar 2020 16:50:21 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5EA86268DA; Fri, 20 Mar 2020 16:50:21 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KGoLso089979; Fri, 20 Mar 2020 16:50:21 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KGoKu2089974; Fri, 20 Mar 2020 16:50:20 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003201650.02KGoKu2089974@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 20 Mar 2020 16:50:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359178 - in head: . share/man/man4/man4.i386 sys/conf sys/dev/ctau sys/dev/cx sys/i386/conf sys/modules X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: in head: . share/man/man4/man4.i386 sys/conf sys/dev/ctau sys/dev/cx sys/i386/conf sys/modules X-SVN-Commit-Revision: 359178 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 16:50:21 -0000 Author: emaste Date: Fri Mar 20 16:50:19 2020 New Revision: 359178 URL: https://svnweb.freebsd.org/changeset/base/359178 Log: retire cx,ctau drivers The devices supported by these drivers are obsolete ISA cards, and the sync serial protocols they supported are essentially obsolete too. Sponsored by: The FreeBSD Foundation Deleted: head/share/man/man4/man4.i386/ctau.4 head/share/man/man4/man4.i386/cx.4 head/sys/dev/ctau/ head/sys/dev/cx/cronyxfw.h head/sys/dev/cx/csigma.c head/sys/dev/cx/csigmafw.h head/sys/dev/cx/cxddk.c head/sys/dev/cx/cxddk.h head/sys/dev/cx/cxreg.h head/sys/dev/cx/if_cx.c head/sys/dev/cx/ng_cx.h Modified: head/ObsoleteFiles.inc head/share/man/man4/man4.i386/Makefile head/sys/conf/WITHOUT_SOURCELESS_UCODE head/sys/conf/files.i386 head/sys/i386/conf/NOTES head/sys/modules/Makefile Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Fri Mar 20 16:25:06 2020 (r359177) +++ head/ObsoleteFiles.inc Fri Mar 20 16:50:19 2020 (r359178) @@ -36,6 +36,10 @@ # xargs -n1 | sort | uniq -d; # done +# 20200320: cx and ctau drivers retired +OLD_FILES+=usr/share/man/man4/ctau.4.gz +OLD_FILES+=usr/share/man/man4/cx.4.gz + # 20200318: host.conf was deprecated a long time ago. OLD_FILES+=etc/host.conf OLD_FILES+=etc/rc.d/nsswitch Modified: head/share/man/man4/man4.i386/Makefile ============================================================================== --- head/share/man/man4/man4.i386/Makefile Fri Mar 20 16:25:06 2020 (r359177) +++ head/share/man/man4/man4.i386/Makefile Fri Mar 20 16:50:19 2020 (r359178) @@ -4,8 +4,6 @@ MAN= apm.4 \ ce.4 \ cp.4 \ CPU_ELAN.4 \ - ctau.4 \ - cx.4 \ glxiic.4 \ glxsb.4 \ longrun.4 \ Modified: head/sys/conf/WITHOUT_SOURCELESS_UCODE ============================================================================== --- head/sys/conf/WITHOUT_SOURCELESS_UCODE Fri Mar 20 16:25:06 2020 (r359177) +++ head/sys/conf/WITHOUT_SOURCELESS_UCODE Fri Mar 20 16:50:19 2020 (r359178) @@ -16,7 +16,6 @@ nodevice ti nodevice txp nodevice ce nodevice cp -nodevice ctau nodevice ipwfw nodevice iwifw nodevice iwmfw Modified: head/sys/conf/files.i386 ============================================================================== --- head/sys/conf/files.i386 Fri Mar 20 16:25:06 2020 (r359177) +++ head/sys/conf/files.i386 Fri Mar 20 16:50:19 2020 (r359178) @@ -97,12 +97,6 @@ dev/ce/tau32-ddk.c optional ce \ dev/cp/cpddk.c optional cp \ compile-with "${NORMAL_C} ${NO_WMISLEADING_INDENTATION}" dev/cp/if_cp.c optional cp -dev/ctau/ctau.c optional ctau -dev/ctau/ctddk.c optional ctau -dev/ctau/if_ct.c optional ctau -dev/cx/csigma.c optional cx -dev/cx/cxddk.c optional cx -dev/cx/if_cx.c optional cx dev/glxiic/glxiic.c optional glxiic dev/glxsb/glxsb.c optional glxsb dev/glxsb/glxsb_hash.c optional glxsb Modified: head/sys/i386/conf/NOTES ============================================================================== --- head/sys/i386/conf/NOTES Fri Mar 20 16:25:06 2020 (r359177) +++ head/sys/i386/conf/NOTES Fri Mar 20 16:50:19 2020 (r359178) @@ -501,9 +501,6 @@ device cpufreq # V.35/RS-232/RS-530/RS-449/X.21/G.703/E1/E3/T3/STS-1 # serial adaptor (requires sppp (default), or NETGRAPH if # NETGRAPH_CRONYX is configured) -# ctau: Cronyx Tau sync dual port V.35/RS-232/RS-530/RS-449/X.21/G.703/E1 -# serial adaptor (requires sppp (default), or NETGRAPH if -# NETGRAPH_CRONYX is configured) # ipw: Intel PRO/Wireless 2100 IEEE 802.11 adapter # iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 adapters # Requires the iwi firmware module @@ -526,11 +523,6 @@ device ce device cp hint.cs.0.at="isa" hint.cs.0.port="0x300" -device ctau -hint.ctau.0.at="isa" -hint.ctau.0.port="0x240" -hint.ctau.0.irq="15" -hint.ctau.0.drq="7" #options NETGRAPH_CRONYX # Enable NETGRAPH support for Cronyx adapter(s) options ED_3C503 options ED_HPP Modified: head/sys/modules/Makefile ============================================================================== --- head/sys/modules/Makefile Fri Mar 20 16:25:06 2020 (r359177) +++ head/sys/modules/Makefile Fri Mar 20 16:50:19 2020 (r359178) @@ -98,7 +98,6 @@ SUBDIR= \ ${_cpufreq} \ ${_crypto} \ ${_cryptodev} \ - ${_ctau} \ ctl \ ${_cxgb} \ ${_cxgbe} \ @@ -737,9 +736,6 @@ _glxsb= glxsb _pcfclock= pcfclock _pst= pst _sbni= sbni -.if ${MK_SOURCELESS_UCODE} != "no" -_ctau= ctau -.endif .endif .if ${MACHINE_CPUARCH} == "arm" From owner-svn-src-head@freebsd.org Fri Mar 20 17:16:21 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id B844C26D396; Fri, 20 Mar 2020 17:16:21 +0000 (UTC) (envelope-from nick@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kVmj483wz3xyT; Fri, 20 Mar 2020 17:16:21 +0000 (UTC) (envelope-from nick@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 813F926E3C; Fri, 20 Mar 2020 17:16:21 +0000 (UTC) (envelope-from nick@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KHGLA5007831; Fri, 20 Mar 2020 17:16:21 GMT (envelope-from nick@FreeBSD.org) Received: (from nick@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KHGLlI007830; Fri, 20 Mar 2020 17:16:21 GMT (envelope-from nick@FreeBSD.org) Message-Id: <202003201716.02KHGLlI007830@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: nick set sender to nick@FreeBSD.org using -f From: "Nick O'Brien" Date: Fri, 20 Mar 2020 17:16:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359179 - head/share/misc X-SVN-Group: head X-SVN-Commit-Author: nick X-SVN-Commit-Paths: head/share/misc X-SVN-Commit-Revision: 359179 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 17:16:21 -0000 Author: nick Date: Fri Mar 20 17:16:21 2020 New Revision: 359179 URL: https://svnweb.freebsd.org/changeset/base/359179 Log: Add myself (nick) as a src committer Reviewed by: philip (mentor) Approved by: philip (mentor), kp (mentor) Differential Revision: https://reviews.freebsd.org/D24130 Modified: head/share/misc/committers-src.dot Modified: head/share/misc/committers-src.dot ============================================================================== --- head/share/misc/committers-src.dot Fri Mar 20 16:50:19 2020 (r359178) +++ head/share/misc/committers-src.dot Fri Mar 20 17:16:21 2020 (r359179) @@ -275,6 +275,7 @@ mw [label="Marcin Wojtas\nmw@FreeBSD.org\n2017/07/18"] neel [label="Neel Natu\nneel@FreeBSD.org\n2009/09/20"] netchild [label="Alexander Leidinger\nnetchild@FreeBSD.org\n2005/03/31"] ngie [label="Enji Cooper\nngie@FreeBSD.org\n2014/07/27"] +nick [label="Nick O'Brien\nnick@FreeBSD.org\n2020/03/09"] nork [label="Norikatsu Shigemura\nnork@FreeBSD.org\n2009/06/09"] np [label="Navdeep Parhar\nnp@FreeBSD.org\n2009/06/05"] nwhitehorn [label="Nathan Whitehorn\nnwhitehorn@FreeBSD.org\n2008/07/03"] @@ -699,6 +700,8 @@ kib -> zont kmacy -> lstewart +kp -> nick + marcel -> allanjude marcel -> art marcel -> arun @@ -775,6 +778,7 @@ philip -> jls philip -> matteo philip -> uqs philip -> kp +philip -> nick phk -> jkoshy phk -> mux From owner-svn-src-head@freebsd.org Fri Mar 20 18:19:13 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 66A1926EFDC; Fri, 20 Mar 2020 18:19:13 +0000 (UTC) (envelope-from glebius@freebsd.org) Received: from cell.glebi.us (glebi.us [162.251.186.162]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "cell.glebi.us", Issuer "cell.glebi.us" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kX9C7448z49hw; Fri, 20 Mar 2020 18:19:11 +0000 (UTC) (envelope-from glebius@freebsd.org) Received: from cell.glebi.us (localhost [127.0.0.1]) by cell.glebi.us (8.15.2/8.15.2) with ESMTPS id 02KIJ2sf012247 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Fri, 20 Mar 2020 11:19:02 -0700 (PDT) (envelope-from glebius@freebsd.org) Received: (from glebius@localhost) by cell.glebi.us (8.15.2/8.15.2/Submit) id 02KIJ2F9012246; Fri, 20 Mar 2020 11:19:02 -0700 (PDT) (envelope-from glebius@freebsd.org) X-Authentication-Warning: cell.glebi.us: glebius set sender to glebius@freebsd.org using -f Date: Fri, 20 Mar 2020 11:19:02 -0700 From: Gleb Smirnoff To: Andrew Gallatin Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r359016 - head/sys/netinet Message-ID: <20200320181902.GB1292@FreeBSD.org> References: <202003161403.02GE3Rse024202@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202003161403.02GE3Rse024202@repo.freebsd.org> X-Rspamd-Queue-Id: 48kX9C7448z49hw X-Spamd-Bar: + Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [1.48 / 15.00]; local_wl_from(0.00)[freebsd.org]; NEURAL_SPAM_LONG(0.98)[0.981,0]; NEURAL_SPAM_MEDIUM(0.50)[0.498,0]; ASN(0.00)[asn:27348, ipnet:162.251.186.0/24, country:US] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 18:19:13 -0000 Andrew, On Mon, Mar 16, 2020 at 02:03:27PM +0000, Andrew Gallatin wrote: A> Log: A> Avoid a cache miss accessing an mbuf ext_pgs pointer when doing SW kTLS. A> A> For a Netflix 90Gb/s 100% TLS software kTLS workload, this reduces A> the CPI of tcp_m_copym() from ~3.5 to ~2.5 as reported by vtune. A> A> Reviewed by: jtl, rrs A> Sponsored by: Netflix A> Differential Revision: https://reviews.freebsd.org/D23998 A> A> Modified: A> head/sys/netinet/tcp_output.c A> A> Modified: head/sys/netinet/tcp_output.c A> ============================================================================== A> --- head/sys/netinet/tcp_output.c Mon Mar 16 13:53:29 2020 (r359015) A> +++ head/sys/netinet/tcp_output.c Mon Mar 16 14:03:27 2020 (r359016) A> @@ -1907,7 +1907,7 @@ tcp_m_copym(struct mbuf *m, int32_t off0, int32_t *ple A> top = NULL; A> pkthdrlen = NULL; A> #ifdef KERN_TLS A> - if (m->m_flags & M_NOMAP) A> + if (hw_tls && (m->m_flags & M_NOMAP)) A> tls = m->m_ext.ext_pgs->tls; A> else A> tls = NULL; IMHO, such changes must always be accompanied by a comment. Otherwise, I can easily imagine someone in couple of years "optimizing" it back with commit message "Remove extraneous check. m->m_ext.ext_pgs->tls is NULL when tls is off" -- Gleb Smirnoff From owner-svn-src-head@freebsd.org Fri Mar 20 19:23:56 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 40E0F27074D; Fri, 20 Mar 2020 19:23:56 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kYbw14s7z4W7q; Fri, 20 Mar 2020 19:23:56 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 07C77772; Fri, 20 Mar 2020 19:23:56 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KJNt4k085033; Fri, 20 Mar 2020 19:23:55 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KJNt71085032; Fri, 20 Mar 2020 19:23:55 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003201923.02KJNt71085032@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 20 Mar 2020 19:23:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359180 - head/sys/modules/ctau X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/sys/modules/ctau X-SVN-Commit-Revision: 359180 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 19:23:56 -0000 Author: emaste Date: Fri Mar 20 19:23:55 2020 New Revision: 359180 URL: https://svnweb.freebsd.org/changeset/base/359180 Log: Remove ctau module subdir, missed in r359178 Deleted: head/sys/modules/ctau/ From owner-svn-src-head@freebsd.org Fri Mar 20 19:28:57 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 27EF02708B3; Fri, 20 Mar 2020 19:28:57 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kYjj0K5Lz4YGj; Fri, 20 Mar 2020 19:28:57 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 01687774; Fri, 20 Mar 2020 19:28:57 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KJSuD4085298; Fri, 20 Mar 2020 19:28:56 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KJSt3s085292; Fri, 20 Mar 2020 19:28:55 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003201928.02KJSt3s085292@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 20 Mar 2020 19:28:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359181 - in head/sys/dev: ce cp cx X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: in head/sys/dev: ce cp cx X-SVN-Commit-Revision: 359181 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 19:28:57 -0000 Author: emaste Date: Fri Mar 20 19:28:55 2020 New Revision: 359181 URL: https://svnweb.freebsd.org/changeset/base/359181 Log: Use a separate copy of machdep.h in cp and ce drivers Previously they included sys/dev/cx/machdep.h, but the cx driver was retired in r359178. These drivers haven't had real development for a decade or more so there's no real benefit in sharing this file; just copy it to the ce and cp subdirs. Added: head/sys/dev/ce/machdep.h - copied unchanged from r359180, head/sys/dev/cx/machdep.h head/sys/dev/cp/machdep.h - copied unchanged from r359180, head/sys/dev/cx/machdep.h Deleted: head/sys/dev/cx/ Modified: head/sys/dev/ce/ceddk.c head/sys/dev/ce/if_ce.c head/sys/dev/cp/cpddk.c head/sys/dev/cp/if_cp.c Modified: head/sys/dev/ce/ceddk.c ============================================================================== --- head/sys/dev/ce/ceddk.c Fri Mar 20 19:23:55 2020 (r359180) +++ head/sys/dev/ce/ceddk.c Fri Mar 20 19:28:55 2020 (r359181) @@ -18,7 +18,7 @@ #include __FBSDID("$FreeBSD$"); -#include +#include #include #undef CE_DDK_DEBUG_ENABLED Modified: head/sys/dev/ce/if_ce.c ============================================================================== --- head/sys/dev/ce/if_ce.c Fri Mar 20 19:23:55 2020 (r359180) +++ head/sys/dev/ce/if_ce.c Fri Mar 20 19:28:55 2020 (r359181) @@ -72,7 +72,7 @@ __FBSDID("$FreeBSD$"); # define PP_CISCO IFF_LINK2 # include #endif -#include +#include #include #include #include Copied: head/sys/dev/ce/machdep.h (from r359180, head/sys/dev/cx/machdep.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/ce/machdep.h Fri Mar 20 19:28:55 2020 (r359181, copy of r359180, head/sys/dev/cx/machdep.h) @@ -0,0 +1,97 @@ +/*- + * Cronyx DDK: platform dependent definitions. + * + * Copyright (C) 1998-1999 Cronyx Engineering + * Author: Alexander Kvitchenko, + * + * Copyright (C) 2001-2003 Cronyx Engineering. + * Author: Roman Kurakin, + * + * This software is distributed with NO WARRANTIES, not even the implied + * warranties for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * Authors grant any other persons or organisations permission to use + * or modify this software as long as this message is kept with the software, + * all derivative works or modified versions. + * + * Cronyx Id: machdep.h,v 1.3.4.3 2003/11/27 14:21:58 rik Exp $ + * $FreeBSD$ + */ + +/* + * DOS (Borland Turbo C++ 1.0) + */ +#if defined (MSDOS) || defined (__MSDOS__) +# include +# include +# define inb(port) inportb(port) +# define inw(port) inport(port) +# define outb(port,b) outportb(port,b) +# define outw(port,w) outport(port,w) +# define GETTICKS() biostime(0,0L) +#else + +/* + * Windows NT + */ +#ifdef NDIS_MINIPORT_DRIVER +# include +# define inb(port) inp((unsigned short)(port)) +# define inw(port) inpw((unsigned short)(port)) +# define outb(port,b) outp((unsigned short)(port),b) +# define outw(port,w) outpw((unsigned short)(port),(unsigned short)(w)) +#pragma warning (disable: 4761) +#pragma warning (disable: 4242) +#pragma warning (disable: 4244) +#define ulong64 unsigned __int64 +#else + +/* + * Linux + */ +#ifdef __linux__ +# undef REALLY_SLOW_IO +# include /* should swap outb() arguments */ +# include +# include + static inline void __ddk_outb (unsigned port, unsigned char byte) + { outb (byte, port); } + static inline void __ddk_outw (unsigned port, unsigned short word) + { outw (word, port); } +# undef outb +# undef outw +# define outb(port,val) __ddk_outb(port, val) +# define outw(port,val) __ddk_outw(port, val) +# define GETTICKS() (jiffies * 200 / 11 / HZ) +#else + +/* + * FreeBSD and BSD/OS + */ +#ifdef __FreeBSD__ +# include +# include +# include +# include +# define port_t int + +#ifndef _SYS_CDEFS_H_ +#error this file needs sys/cdefs.h as a prerequisite +#endif +#endif + +#endif +#endif +#endif + +#ifndef inline +# ifdef __CC_SUPPORTS___INLINE__ +# define inline __inline__ +# else +# define inline /**/ +# endif +#endif + +#ifndef ulong64 +#define ulong64 unsigned long long +#endif Modified: head/sys/dev/cp/cpddk.c ============================================================================== --- head/sys/dev/cp/cpddk.c Fri Mar 20 19:23:55 2020 (r359180) +++ head/sys/dev/cp/cpddk.c Fri Mar 20 19:28:55 2020 (r359181) @@ -20,7 +20,7 @@ #include __FBSDID("$FreeBSD$"); -#include +#include #define CPDDK_COBF_SAFE #include Modified: head/sys/dev/cp/if_cp.c ============================================================================== --- head/sys/dev/cp/if_cp.c Fri Mar 20 19:23:55 2020 (r359180) +++ head/sys/dev/cp/if_cp.c Fri Mar 20 19:28:55 2020 (r359181) @@ -63,7 +63,7 @@ __FBSDID("$FreeBSD$"); # define PP_CISCO IFF_LINK2 # include #endif -#include +#include #include #include #include Copied: head/sys/dev/cp/machdep.h (from r359180, head/sys/dev/cx/machdep.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/cp/machdep.h Fri Mar 20 19:28:55 2020 (r359181, copy of r359180, head/sys/dev/cx/machdep.h) @@ -0,0 +1,97 @@ +/*- + * Cronyx DDK: platform dependent definitions. + * + * Copyright (C) 1998-1999 Cronyx Engineering + * Author: Alexander Kvitchenko, + * + * Copyright (C) 2001-2003 Cronyx Engineering. + * Author: Roman Kurakin, + * + * This software is distributed with NO WARRANTIES, not even the implied + * warranties for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * Authors grant any other persons or organisations permission to use + * or modify this software as long as this message is kept with the software, + * all derivative works or modified versions. + * + * Cronyx Id: machdep.h,v 1.3.4.3 2003/11/27 14:21:58 rik Exp $ + * $FreeBSD$ + */ + +/* + * DOS (Borland Turbo C++ 1.0) + */ +#if defined (MSDOS) || defined (__MSDOS__) +# include +# include +# define inb(port) inportb(port) +# define inw(port) inport(port) +# define outb(port,b) outportb(port,b) +# define outw(port,w) outport(port,w) +# define GETTICKS() biostime(0,0L) +#else + +/* + * Windows NT + */ +#ifdef NDIS_MINIPORT_DRIVER +# include +# define inb(port) inp((unsigned short)(port)) +# define inw(port) inpw((unsigned short)(port)) +# define outb(port,b) outp((unsigned short)(port),b) +# define outw(port,w) outpw((unsigned short)(port),(unsigned short)(w)) +#pragma warning (disable: 4761) +#pragma warning (disable: 4242) +#pragma warning (disable: 4244) +#define ulong64 unsigned __int64 +#else + +/* + * Linux + */ +#ifdef __linux__ +# undef REALLY_SLOW_IO +# include /* should swap outb() arguments */ +# include +# include + static inline void __ddk_outb (unsigned port, unsigned char byte) + { outb (byte, port); } + static inline void __ddk_outw (unsigned port, unsigned short word) + { outw (word, port); } +# undef outb +# undef outw +# define outb(port,val) __ddk_outb(port, val) +# define outw(port,val) __ddk_outw(port, val) +# define GETTICKS() (jiffies * 200 / 11 / HZ) +#else + +/* + * FreeBSD and BSD/OS + */ +#ifdef __FreeBSD__ +# include +# include +# include +# include +# define port_t int + +#ifndef _SYS_CDEFS_H_ +#error this file needs sys/cdefs.h as a prerequisite +#endif +#endif + +#endif +#endif +#endif + +#ifndef inline +# ifdef __CC_SUPPORTS___INLINE__ +# define inline __inline__ +# else +# define inline /**/ +# endif +#endif + +#ifndef ulong64 +#define ulong64 unsigned long long +#endif From owner-svn-src-head@freebsd.org Fri Mar 20 19:38:15 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7399B270DCC; Fri, 20 Mar 2020 19:38:15 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kYwR163Vz3Fnx; Fri, 20 Mar 2020 19:38:15 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id EF176947; Fri, 20 Mar 2020 19:38:14 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KJcETW091300; Fri, 20 Mar 2020 19:38:14 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KJcEJH091299; Fri, 20 Mar 2020 19:38:14 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003201938.02KJcEJH091299@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 20 Mar 2020 19:38:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359182 - head/sys/modules/cx X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/sys/modules/cx X-SVN-Commit-Revision: 359182 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 19:38:15 -0000 Author: emaste Date: Fri Mar 20 19:38:14 2020 New Revision: 359182 URL: https://svnweb.freebsd.org/changeset/base/359182 Log: Remove cx module subdir, missed in r359178 Deleted: head/sys/modules/cx/ From owner-svn-src-head@freebsd.org Fri Mar 20 20:02:54 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 5CDAF271C3B; Fri, 20 Mar 2020 20:02:54 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kZSt0WpBz4GqF; Fri, 20 Mar 2020 20:02:54 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id F26B4ED8; Fri, 20 Mar 2020 20:02:53 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KK2rIo009221; Fri, 20 Mar 2020 20:02:53 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KK2rT2009220; Fri, 20 Mar 2020 20:02:53 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202003202002.02KK2rT2009220@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Fri, 20 Mar 2020 20:02:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359183 - head/lib/libc/locale X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: head/lib/libc/locale X-SVN-Commit-Revision: 359183 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 20:02:54 -0000 Author: markj Date: Fri Mar 20 20:02:53 2020 New Revision: 359183 URL: https://svnweb.freebsd.org/changeset/base/359183 Log: Fix uselocale(3) to not leak a reference to the old locale. In a single-threaded program pthread_getspecific() always returns NULL, so the old locale would not end up being freed. PR: 239520 MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Modified: head/lib/libc/locale/xlocale.c Modified: head/lib/libc/locale/xlocale.c ============================================================================== --- head/lib/libc/locale/xlocale.c Fri Mar 20 19:38:14 2020 (r359182) +++ head/lib/libc/locale/xlocale.c Fri Mar 20 20:02:53 2020 (r359183) @@ -163,7 +163,7 @@ set_thread_locale(locale_t loc) if (NULL != l) { xlocale_retain((struct xlocale_refcounted*)l); } - locale_t old = pthread_getspecific(locale_info_key); + locale_t old = get_thread_locale(); if ((NULL != old) && (l != old)) { xlocale_release((struct xlocale_refcounted*)old); } From owner-svn-src-head@freebsd.org Fri Mar 20 20:09:01 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 9E2E3271E98; Fri, 20 Mar 2020 20:09:01 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kZbx3DKLz4PP4; Fri, 20 Mar 2020 20:09:01 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4F6D4EE9; Fri, 20 Mar 2020 20:09:01 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KK91c0009693; Fri, 20 Mar 2020 20:09:01 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KK91fV009692; Fri, 20 Mar 2020 20:09:01 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202003202009.02KK91fV009692@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Fri, 20 Mar 2020 20:09:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359184 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 359184 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 20:09:01 -0000 Author: markj Date: Fri Mar 20 20:09:00 2020 New Revision: 359184 URL: https://svnweb.freebsd.org/changeset/base/359184 Log: Lock the socket in soo_stat(). Otherwise nothing synchronizes with a concurrent conversion of the socket to a listening socket. Only the PF_LOCAL protocols implement pru_sense, and it is safe to hold the socket lock there, so do so for now. Reported by: syzbot+4801f1b79ea40953ca8e@syzkaller.appspotmail.com MFC after: 1 week Sponsored by: The FreeBSD Foundation Modified: head/sys/kern/sys_socket.c Modified: head/sys/kern/sys_socket.c ============================================================================== --- head/sys/kern/sys_socket.c Fri Mar 20 20:02:53 2020 (r359183) +++ head/sys/kern/sys_socket.c Fri Mar 20 20:09:00 2020 (r359184) @@ -287,9 +287,7 @@ soo_stat(struct file *fp, struct stat *ub, struct ucre struct thread *td) { struct socket *so = fp->f_data; -#ifdef MAC int error; -#endif bzero((caddr_t)ub, sizeof (*ub)); ub->st_mode = S_IFSOCK; @@ -298,6 +296,7 @@ soo_stat(struct file *fp, struct stat *ub, struct ucre if (error) return (error); #endif + SOCK_LOCK(so); if (!SOLISTENING(so)) { struct sockbuf *sb; @@ -320,7 +319,9 @@ soo_stat(struct file *fp, struct stat *ub, struct ucre } ub->st_uid = so->so_cred->cr_uid; ub->st_gid = so->so_cred->cr_gid; - return (*so->so_proto->pr_usrreqs->pru_sense)(so, ub); + error = so->so_proto->pr_usrreqs->pru_sense(so, ub); + SOCK_UNLOCK(so); + return (error); } /* From owner-svn-src-head@freebsd.org Fri Mar 20 21:07:04 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E763C273243; Fri, 20 Mar 2020 21:07:04 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kbtw2CQnz4TJ8; Fri, 20 Mar 2020 21:07:04 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 86F301A21; Fri, 20 Mar 2020 21:07:02 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KL720c045531; Fri, 20 Mar 2020 21:07:02 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KL6wSp045495; Fri, 20 Mar 2020 21:06:58 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202003202106.02KL6wSp045495@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 20 Mar 2020 21:06:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359185 - in head/sys: conf modules/cxgbe/iw_cxgbe modules/ibcore modules/ipoib modules/iser modules/lindebugfs modules/linuxkpi modules/mlx4 modules/mlx4en modules/mlx4ib modules/mlx5 ... X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in head/sys: conf modules/cxgbe/iw_cxgbe modules/ibcore modules/ipoib modules/iser modules/lindebugfs modules/linuxkpi modules/mlx4 modules/mlx4en modules/mlx4ib modules/mlx5 modules/mlx5en modules/ml... X-SVN-Commit-Revision: 359185 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 21:07:05 -0000 Author: kib Date: Fri Mar 20 21:06:58 2020 New Revision: 359185 URL: https://svnweb.freebsd.org/changeset/base/359185 Log: Introduce LINUXKPI_GENSRCS. Centralize the list of generated files required by linuxkpi consumers, into the common variable. This way, consumers that use the variable are insulated from possible changes in the list. Reviewed by: hselasky, imp Sponsored by: Mellanox Technologies MFC after: 1 week Differential revision: https://reviews.freebsd.org/D24137 Modified: head/sys/conf/kmod.mk head/sys/modules/cxgbe/iw_cxgbe/Makefile head/sys/modules/ibcore/Makefile head/sys/modules/ipoib/Makefile head/sys/modules/iser/Makefile head/sys/modules/lindebugfs/Makefile head/sys/modules/linuxkpi/Makefile head/sys/modules/mlx4/Makefile head/sys/modules/mlx4en/Makefile head/sys/modules/mlx4ib/Makefile head/sys/modules/mlx5/Makefile head/sys/modules/mlx5en/Makefile head/sys/modules/mlx5fpga_tools/Makefile head/sys/modules/mlx5ib/Makefile head/sys/modules/mlxfw/Makefile head/sys/modules/mthca/Makefile head/sys/modules/qlnx/qlnxe/Makefile head/sys/modules/qlnx/qlnxev/Makefile head/sys/modules/qlnx/qlnxr/Makefile head/sys/modules/rdma/krping/Makefile Modified: head/sys/conf/kmod.mk ============================================================================== --- head/sys/conf/kmod.mk Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/conf/kmod.mk Fri Mar 20 21:06:58 2020 (r359185) @@ -94,6 +94,16 @@ WERROR?= -Wno-error WERROR?= -Werror .endif +LINUXKPI_GENSRCS+= \ + bus_if.h \ + device_if.h \ + pci_if.h \ + pci_iov_if.h \ + vnode_if.h \ + usb_if.h \ + opt_usb.h \ + opt_stack.h + CFLAGS+= ${WERROR} CFLAGS+= -D_KERNEL CFLAGS+= -DKLD_MODULE Modified: head/sys/modules/cxgbe/iw_cxgbe/Makefile ============================================================================== --- head/sys/modules/cxgbe/iw_cxgbe/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/cxgbe/iw_cxgbe/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -4,24 +4,17 @@ CXGBE= ${SRCTOP}/sys/dev/cxgbe .PATH: ${CXGBE}/iw_cxgbe KMOD= iw_cxgbe -SRCS= bus_if.h SRCS+= cm.c SRCS+= cq.c SRCS+= device.c -SRCS+= device_if.h SRCS+= ev.c SRCS+= id_table.c SRCS+= mem.c -SRCS+= opt_inet.h -SRCS+= opt_ktr.h -SRCS+= opt_ofed.h -SRCS+= opt_sched.h -SRCS+= pci_if.h -SRCS+= pcib_if.h SRCS+= provider.c SRCS+= qp.c SRCS+= resource.c -SRCS+= vnode_if.h +SRCS+= ${LINUXKPI_GENSRCS} +SRCS+= opt_inet.h opt_inet6.h opt_ktr.h opt_ofed.h opt_sched.h CFLAGS+= -I${CXGBE} -I${SRCTOP}/sys/ofed/include -DLINUX_TYPES_DEFINED CFLAGS+= -I${SRCTOP}/sys/ofed/include/uapi Modified: head/sys/modules/ibcore/Makefile ============================================================================== --- head/sys/modules/ibcore/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/ibcore/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -2,8 +2,7 @@ .PATH: ${SRCTOP}/sys/ofed/drivers/infiniband/core KMOD= ibcore -SRCS= vnode_if.h device_if.h bus_if.h pci_if.h pci_iov_if.h \ - opt_inet.h opt_inet6.h \ +SRCS= \ ib_addr.c \ ib_agent.c \ ib_cache.c \ @@ -32,6 +31,8 @@ SRCS= vnode_if.h device_if.h bus_if.h pci_if.h pci_iov ib_uverbs_main.c \ ib_uverbs_marshall.c \ ib_verbs.c +SRCS+= ${LINUXKPI_GENSRCS} +SRCS+= opt_inet.h opt_inet6.h CFLAGS+= -I${SRCTOP}/sys/ofed/include CFLAGS+= -I${SRCTOP}/sys/ofed/include/uapi Modified: head/sys/modules/ipoib/Makefile ============================================================================== --- head/sys/modules/ipoib/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/ipoib/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -2,10 +2,10 @@ .PATH: ${SRCTOP}/sys/ofed/drivers/infiniband/ulp/ipoib KMOD= ipoib -SRCS= device_if.h bus_if.h vnode_if.h pci_if.h \ - opt_inet.h opt_inet6.h opt_ofed.h \ - ipoib_cm.c ipoib_ib.c ipoib_main.c \ +SRCS= ipoib_cm.c ipoib_ib.c ipoib_main.c \ ipoib_multicast.c ipoib_verbs.c +SRCS+= ${LINUXKPI_GENSRCS} +SRCS+= opt_inet.h opt_inet6.h opt_ofed.h CFLAGS+= -I${SRCTOP}/sys/ofed/drivers/infiniband/ulp/ipoib CFLAGS+= -I${SRCTOP}/sys/ofed/include Modified: head/sys/modules/iser/Makefile ============================================================================== --- head/sys/modules/iser/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/iser/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -11,13 +11,9 @@ SRCS= icl_iser.c SRCS+= iser_initiator.c SRCS+= iser_memory.c SRCS+= iser_verbs.c -SRCS+= vnode_if.h -SRCS+= opt_inet.h -SRCS+= opt_inet6.h -SRCS+= opt_cam.h -SRCS+= bus_if.h -SRCS+= device_if.h -SRCS+= icl_conn_if.h + +SRCS+= ${LINUXKPI_GENSRCS} +SRCS+= opt_inet.h opt_inet6.h opt_cam.h icl_conn_if.h CFLAGS+= -I${SYSDIR}/ CFLAGS+= -I${SYSDIR}/ofed/include Modified: head/sys/modules/lindebugfs/Makefile ============================================================================== --- head/sys/modules/lindebugfs/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/lindebugfs/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -3,9 +3,8 @@ .PATH: ${SRCTOP}/sys/compat/lindebugfs KMOD= lindebugfs -SRCS= vnode_if.h \ - device_if.h bus_if.h pci_if.h \ - lindebugfs.c +SRCS= lindebugfs.c +SRCS+= ${LINUXKPI_GENSRCS} CFLAGS+= -I${SRCTOP}/sys/compat/linuxkpi/common/include Modified: head/sys/modules/linuxkpi/Makefile ============================================================================== --- head/sys/modules/linuxkpi/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/linuxkpi/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -21,14 +21,7 @@ SRCS= linux_compat.c \ linux_usb.c \ linux_work.c -SRCS+= bus_if.h \ - device_if.h \ - pci_if.h \ - pci_iov_if.h \ - vnode_if.h \ - usb_if.h \ - opt_usb.h \ - opt_stack.h +SRCS+= ${LINUXKPI_GENSRCS} CFLAGS+= -I${SRCTOP}/sys/compat/linuxkpi/common/include CFLAGS+= -I${SRCTOP}/sys/contrib/ck/include Modified: head/sys/modules/mlx4/Makefile ============================================================================== --- head/sys/modules/mlx4/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/mlx4/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -2,8 +2,7 @@ .PATH: ${SRCTOP}/sys/dev/mlx4/mlx4_core KMOD= mlx4 -SRCS= device_if.h bus_if.h vnode_if.h pci_if.h pci_iov_if.h \ - opt_inet.h opt_inet6.h \ +SRCS= \ mlx4_alloc.c \ mlx4_catas.c \ mlx4_cmd.c \ @@ -24,6 +23,8 @@ SRCS= device_if.h bus_if.h vnode_if.h pci_if.h pci_iov mlx4_sense.c \ mlx4_srq.c \ mlx4_resource_tracker.c +SRCS+= ${LINUXKPI_GENSRCS} +SRCS+= opt_inet.h opt_inet6.h CFLAGS+= -I${SRCTOP}/sys/ofed/include CFLAGS+= -I${SRCTOP}/sys/ofed/include/uapi Modified: head/sys/modules/mlx4en/Makefile ============================================================================== --- head/sys/modules/mlx4en/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/mlx4en/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -2,8 +2,7 @@ .PATH: ${SRCTOP}/sys/dev/mlx4/mlx4_en KMOD= mlx4en -SRCS= device_if.h bus_if.h pci_if.h pci_iov_if.h vnode_if.h \ - opt_inet.h opt_inet6.h \ +SRCS= \ mlx4_en_cq.c \ mlx4_en_main.c \ mlx4_en_netdev.c \ @@ -11,6 +10,8 @@ SRCS= device_if.h bus_if.h pci_if.h pci_iov_if.h vnode mlx4_en_resources.c \ mlx4_en_rx.c \ mlx4_en_tx.c +SRCS+= ${LINUXKPI_GENSRCS} +SRCS+= opt_inet.h opt_inet6.h CFLAGS+= -I${SRCTOP}/sys/ofed/include CFLAGS+= -I${SRCTOP}/sys/compat/linuxkpi/common/include Modified: head/sys/modules/mlx4ib/Makefile ============================================================================== --- head/sys/modules/mlx4ib/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/mlx4ib/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -2,8 +2,7 @@ .PATH: ${SRCTOP}/sys/dev/mlx4/mlx4_ib KMOD= mlx4ib -SRCS= device_if.h bus_if.h vnode_if.h pci_if.h pci_iov_if.h \ - opt_inet.h opt_inet6.h \ +SRCS= \ mlx4_ib_alias_GUID.c \ mlx4_ib_mcg.c \ mlx4_ib_sysfs.c \ @@ -17,6 +16,8 @@ SRCS= device_if.h bus_if.h vnode_if.h pci_if.h pci_iov mlx4_ib_srq.c \ mlx4_ib_wc.c \ mlx4_ib_cm.c +SRCS+= ${LINUXKPI_GENSRCS} +SRCS+= opt_inet.h opt_inet6.h CFLAGS+= -I${SRCTOP}/sys/ofed/include CFLAGS+= -I${SRCTOP}/sys/ofed/include/uapi Modified: head/sys/modules/mlx5/Makefile ============================================================================== --- head/sys/modules/mlx5/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/mlx5/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -33,9 +33,9 @@ mlx5_uar.c \ mlx5_vport.c \ mlx5_vsc.c \ mlx5_wq.c \ -mlx5_gid.c \ -device_if.h bus_if.h vnode_if.h pci_if.h pci_iov_if.h \ -opt_inet.h opt_inet6.h opt_rss.h opt_ratelimit.h +mlx5_gid.c +SRCS+= ${LINUXKPI_GENSRCS} +SRCS+= opt_inet.h opt_inet6.h opt_rss.h opt_ratelimit.h CFLAGS+= -I${SRCTOP}/sys/ofed/include CFLAGS+= -I${SRCTOP}/sys/compat/linuxkpi/common/include Modified: head/sys/modules/mlx5en/Makefile ============================================================================== --- head/sys/modules/mlx5en/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/mlx5en/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -12,10 +12,9 @@ mlx5_en_hw_tls.c \ mlx5_en_rx.c \ mlx5_en_rl.c \ mlx5_en_txrx.c \ -mlx5_en_port_buffer.c \ -device_if.h bus_if.h vnode_if.h pci_if.h pci_iov_if.h \ -opt_inet.h opt_inet6.h opt_rss.h opt_ratelimit.h \ -opt_kern_tls.h +mlx5_en_port_buffer.c +SRCS+= ${LINUXKPI_GENSRCS} +SRCS+= opt_inet.h opt_inet6.h opt_rss.h opt_ratelimit.h opt_kern_tls.h .if defined(HAVE_PER_CQ_EVENT_PACKET) CFLAGS+= -DHAVE_PER_CQ_EVENT_PACKET Modified: head/sys/modules/mlx5fpga_tools/Makefile ============================================================================== --- head/sys/modules/mlx5fpga_tools/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/mlx5fpga_tools/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -6,9 +6,8 @@ SRCS= \ mlx5fpga_tools_main.c \ mlx5fpga_tools_char.c -SRCS+= \ - device_if.h bus_if.h vnode_if.h pci_if.h pci_iov_if.h \ - opt_inet.h opt_inet6.h opt_rss.h opt_ratelimit.h +SRCS+= ${LINUXKPI_GENSRCS} +SRCS+= opt_inet.h opt_inet6.h opt_rss.h opt_ratelimit.h CFLAGS+= -I${SRCTOP}/sys/ofed/include CFLAGS+= -I${SRCTOP}/sys/compat/linuxkpi/common/include Modified: head/sys/modules/mlx5ib/Makefile ============================================================================== --- head/sys/modules/mlx5ib/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/mlx5ib/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -14,9 +14,9 @@ mlx5_ib_mem.c \ mlx5_ib_mr.c \ mlx5_ib_qp.c \ mlx5_ib_srq.c \ -mlx5_ib_virt.c \ -device_if.h bus_if.h vnode_if.h pci_if.h pci_iov_if.h \ -opt_inet.h opt_inet6.h opt_ratelimit.h +mlx5_ib_virt.c +SRCS+= ${LINUXKPI_GENSRCS} +SRCS+= opt_inet.h opt_inet6.h opt_ratelimit.h CFLAGS+= -I${SRCTOP}/sys/ofed/include CFLAGS+= -I${SRCTOP}/sys/ofed/include/uapi Modified: head/sys/modules/mlxfw/Makefile ============================================================================== --- head/sys/modules/mlxfw/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/mlxfw/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -5,8 +5,8 @@ KMOD=mlxfw SRCS= \ mlxfw_fsm.c \ mlxfw_mfa2.c \ -mlxfw_mfa2_tlv_multi.c \ -device_if.h bus_if.h vnode_if.h pci_if.h +mlxfw_mfa2_tlv_multi.c +SRCS+= ${LINUXKPI_GENSRCS} CFLAGS+= \ -I${SRCTOP}/sys/ofed/include \ Modified: head/sys/modules/mthca/Makefile ============================================================================== --- head/sys/modules/mthca/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/mthca/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -20,9 +20,9 @@ mthca_provider.c \ mthca_qp.c \ mthca_reset.c \ mthca_srq.c \ -mthca_uar.c \ -device_if.h bus_if.h vnode_if.h pci_if.h \ - opt_inet.h opt_inet6.h +mthca_uar.c +SRCS+= ${LINUXKPI_GENSRCS} +SRCS+= opt_inet.h opt_inet6.h CFLAGS+= -I${SRCTOP}/sys/ofed/include CFLAGS+= -I${SRCTOP}/sys/ofed/include/uapi Modified: head/sys/modules/qlnx/qlnxe/Makefile ============================================================================== --- head/sys/modules/qlnx/qlnxe/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/qlnx/qlnxe/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -57,15 +57,10 @@ SRCS+=ecore_ooo.c SRCS+=ecore_ll2.c SRCS+=qlnx_rdma.c - SRCS+=qlnx_ioctl.c SRCS+=qlnx_os.c -SRCS+= device_if.h -SRCS+= bus_if.h -SRCS+= pci_if.h -SRCS+= pci_iov_if.h - +SRCS+= ${LINUXKPI_GENSRCS} .include Modified: head/sys/modules/qlnx/qlnxev/Makefile ============================================================================== --- head/sys/modules/qlnx/qlnxev/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/qlnx/qlnxev/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -51,10 +51,7 @@ SRCS+=ecore_vf.c SRCS+=qlnx_ioctl.c SRCS+=qlnx_os.c -SRCS+= device_if.h -SRCS+= bus_if.h -SRCS+= pci_if.h -SRCS+= pci_iov_if.h +SRCS+= ${LINUXKPI_GENSRCS} .include Modified: head/sys/modules/qlnx/qlnxr/Makefile ============================================================================== --- head/sys/modules/qlnx/qlnxr/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/qlnx/qlnxr/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -41,11 +41,12 @@ OFEDDIR=${SRCTOP}/sys ETHDRVR=${SRCTOP}/sys/dev/qlnx/qlnxe KMOD= qlnxr -SRCS= device_if.h bus_if.h vnode_if.h pci_if.h \ - opt_inet.h opt_inet6.h \ +SRCS= \ qlnxr_os.c\ qlnxr_cm.c\ qlnxr_verbs.c +SRCS+= ${LINUXKPI_GENSRCS} +SRCS+= opt_inet.h opt_inet6.h .include Modified: head/sys/modules/rdma/krping/Makefile ============================================================================== --- head/sys/modules/rdma/krping/Makefile Fri Mar 20 20:09:00 2020 (r359184) +++ head/sys/modules/rdma/krping/Makefile Fri Mar 20 21:06:58 2020 (r359185) @@ -3,7 +3,7 @@ KMOD= krping SRCS= krping.c krping_dev.c getopt.c -SRCS+= bus_if.h device_if.h pci_if.h pci_iov_if.h pcib_if.h vnode_if.h +SRCS+= ${LINUXKPI_GENSRCS} SRCS+= opt_sched.h opt_inet.h opt_inet6.h CFLAGS+= -I${SRCTOP}/sys/ofed/include CFLAGS+= -I${SRCTOP}/sys/ofed/include/uapi From owner-svn-src-head@freebsd.org Fri Mar 20 23:26:38 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 3C078275D47; Fri, 20 Mar 2020 23:26:38 +0000 (UTC) (envelope-from scottl@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kfzy0pS9z42Yr; Fri, 20 Mar 2020 23:26:38 +0000 (UTC) (envelope-from scottl@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1330F346C; Fri, 20 Mar 2020 23:26:38 +0000 (UTC) (envelope-from scottl@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02KNQbEW029972; Fri, 20 Mar 2020 23:26:37 GMT (envelope-from scottl@FreeBSD.org) Received: (from scottl@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02KNQbwH029971; Fri, 20 Mar 2020 23:26:37 GMT (envelope-from scottl@FreeBSD.org) Message-Id: <202003202326.02KNQbwH029971@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: scottl set sender to scottl@FreeBSD.org using -f From: Scott Long Date: Fri, 20 Mar 2020 23:26:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359187 - head/usr.sbin/pciconf X-SVN-Group: head X-SVN-Commit-Author: scottl X-SVN-Commit-Paths: head/usr.sbin/pciconf X-SVN-Commit-Revision: 359187 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Mar 2020 23:26:38 -0000 Author: scottl Date: Fri Mar 20 23:26:37 2020 New Revision: 359187 URL: https://svnweb.freebsd.org/changeset/base/359187 Log: When printing out the contents of the VSEC, include the contents of the headers. Device documentation often times give offsets relative to the start of the entire VSEC, not just the post-header data area, so this change makes it easier to correlate offsets. Modified: head/usr.sbin/pciconf/cap.c Modified: head/usr.sbin/pciconf/cap.c ============================================================================== --- head/usr.sbin/pciconf/cap.c Fri Mar 20 21:43:08 2020 (r359186) +++ head/usr.sbin/pciconf/cap.c Fri Mar 20 23:26:37 2020 (r359187) @@ -898,13 +898,15 @@ ecap_vendor(int fd, struct pci_conf *p, uint16_t ptr, if ((ver < 1) || (cap_level <= 1)) return; for (i = 0; i < len; i += 4) { - val = read_config(fd, &p->pc_sel, ptr + PCIR_VSEC_DATA + i, 4); + val = read_config(fd, &p->pc_sel, ptr + i, 4); if ((i % 16) == 0) printf(" "); - printf("%02x %02x %02x %02x ", val & 0xff, (val >> 8) & 0xff, + printf("%02x %02x %02x %02x", val & 0xff, (val >> 8) & 0xff, (val >> 16) & 0xff, (val >> 24) & 0xff); if ((((i + 4) % 16) == 0 ) || ((i + 4) >= len)) printf("\n"); + else + printf(" "); } } From owner-svn-src-head@freebsd.org Sat Mar 21 00:00:15 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 57585276FF4; Sat, 21 Mar 2020 00:00:15 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kgkl0tNZz3DSK; Sat, 21 Mar 2020 00:00:14 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-8.local (unknown [IPv6:2601:648:8881:1e90:39af:f9a6:77c9:135b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id 5959C2F79C; Sat, 21 Mar 2020 00:00:14 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Subject: Re: svn commit: r357614 - in head/sys: kern sys To: Pawel Biernacki , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <202002061245.016CjwTi096374@repo.freebsd.org> From: John Baldwin Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: <8b55858a-ff7a-fd7d-a425-a9543f484be7@FreeBSD.org> Date: Fri, 20 Mar 2020 17:00:13 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <202002061245.016CjwTi096374@repo.freebsd.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 21 Mar 2020 00:00:15 -0000 On 2/6/20 4:45 AM, Pawel Biernacki wrote: > Author: kaktus > Date: Thu Feb 6 12:45:58 2020 > New Revision: 357614 > URL: https://svnweb.freebsd.org/changeset/base/357614 > > Log: > sysctl(9): add CTLFLAG_NEEDGIANT flag > > Add CTLFLAG_NEEDGIANT flag (modelled after D_NEEDGIANT) that will be used to > mark sysctls that still require locking Giant. > > Rewrite sysctl_handle_string() to use internal locking instead of locking > Giant. This broke CTLFLAG_RDTUN strings such as hw.cxgbe.config_file. This is supposed to be writable by setting the associated environment variable via loader.conf or kenv: >From sys/dev/cxgbe/t4_main.c: /* * Configuration file. All the _CF names here are special. */ #define DEFAULT_CF "default" #define BUILTIN_CF "built-in" #define FLASH_CF "flash" #define UWIRE_CF "uwire" #define FPGA_CF "fpga" static char t4_cfg_file[32] = DEFAULT_CF; SYSCTL_STRING(_hw_cxgbe, OID_AUTO, config_file, CTLFLAG_RDTUN, t4_cfg_file, sizeof(t4_cfg_file), "Firmware configuration file"); However, CTLFLAG_RDTUN does not include CTLFLAG_WR, so when the kernel attempts to "write" to this node (the "TUN" part) to apply the associated kenv variable when loading the kernel module, your changes here now treat it as a ro_string and set 'arg2' to the length of the actual string. In my case I was setting the value to a longer string that still fit in the allocated space, and the value now fails to set giving me the following error on the console: Setting sysctl hw.cxgbe.config_file failed: 22 You can reproduce by doing the following: # kenv hw.cxgbe.config_file="kern_tls" # kldload if_cxgbe That should give you the error, and then checking the hw.cxgbe.config_file sysctl afterwards will show "default" instead of "kern_tls". Note that you don't need any cxgbe hardware to reproduce this as a fix would result in the value of the sysctl after the kldload being "kern_tls". -- John Baldwin From owner-svn-src-head@freebsd.org Sat Mar 21 00:01:08 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 2A7342770E3; Sat, 21 Mar 2020 00:01:08 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kgll68Cwz3F1n; Sat, 21 Mar 2020 00:01:07 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2DC7C3DDE; Sat, 21 Mar 2020 00:01:07 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02L017o6048961; Sat, 21 Mar 2020 00:01:07 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02L0176J048960; Sat, 21 Mar 2020 00:01:07 GMT (envelope-from imp@FreeBSD.org) Message-Id: <202003210001.02L0176J048960@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Sat, 21 Mar 2020 00:01:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359188 - head/share/mk X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: head/share/mk X-SVN-Commit-Revision: 359188 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 21 Mar 2020 00:01:08 -0000 Author: imp Date: Sat Mar 21 00:01:06 2020 New Revision: 359188 URL: https://svnweb.freebsd.org/changeset/base/359188 Log: Redo r359164 now that it's baked : Eliminate misuse of $MACHINE for userland things. Use TARGET_ARCH and/or MACHINE_ARCH exclusively. Change all __TT uses to __T with appropriate translations. MACHINE/TARGET is to be used only for kernel things, and this fixes the last few stragglers. Modified: head/share/mk/src.opts.mk Modified: head/share/mk/src.opts.mk ============================================================================== --- head/share/mk/src.opts.mk Fri Mar 20 23:26:37 2020 (r359187) +++ head/share/mk/src.opts.mk Sat Mar 21 00:01:06 2020 (r359188) @@ -256,11 +256,6 @@ __T=${TARGET_ARCH} .else __T=${MACHINE_ARCH} .endif -.if defined(TARGET) -__TT=${TARGET} -.else -__TT=${MACHINE} -.endif # All supported backends for LLVM_TARGET_XXX __LLVM_TARGETS= \ @@ -270,13 +265,13 @@ __LLVM_TARGETS= \ powerpc \ riscv \ x86 -__LLVM_TARGET_FILT= C/(amd64|i386)/x86/:S/arm64/aarch64/:S/powerpc64/powerpc/ +__LLVM_TARGET_FILT= C/(amd64|i386)/x86/:C/powerpc.*/powerpc/:C/armv[67]/arm/:C/riscv.*/riscv/:C/mips.*/mips/ .for __llt in ${__LLVM_TARGETS} # Default enable the given TARGET's LLVM_TARGET support -.if ${__TT:${__LLVM_TARGET_FILT}} == ${__llt} +.if ${__T:${__LLVM_TARGET_FILT}} == ${__llt} __DEFAULT_YES_OPTIONS+= LLVM_TARGET_${__llt:${__LLVM_TARGET_FILT}:tu} # aarch64 needs arm for -m32 support. -.elif ${__TT} == "arm64" && ${__llt} == "arm" +.elif ${__T} == "aarch64" && ${__llt:Marm*} != "" __DEFAULT_DEPENDENT_OPTIONS+= LLVM_TARGET_ARM/LLVM_TARGET_AARCH64 # Default the rest of the LLVM_TARGETs to the value of MK_LLVM_TARGET_ALL. .else @@ -288,7 +283,7 @@ __DEFAULT_NO_OPTIONS+=LLVM_TARGET_BPF .include -.if ${__TT} != "mips" +.if ${__T:Mmips*} == "" # Clang is installed as the default /usr/bin/cc. __DEFAULT_YES_OPTIONS+=CLANG_BOOTSTRAP CLANG_IS_CC .else @@ -307,7 +302,7 @@ __DEFAULT_NO_OPTIONS+=BINUTILS_BOOTSTRAP .if ${__T:Mriscv*} != "" BROKEN_OPTIONS+=OFED .endif -.if ${__TT} != "mips" && ${__T} != "powerpc" && ${__T} != "powerpcspe" +.if ${__T:Mmips*} != "mips" && ${__T} != "powerpc" && ${__T} != "powerpcspe" __DEFAULT_YES_OPTIONS+=LLD_BOOTSTRAP LLD_IS_LD .else __DEFAULT_NO_OPTIONS+=LLD_BOOTSTRAP LLD_IS_LD From owner-svn-src-head@freebsd.org Sat Mar 21 00:08:34 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 37F812773CD; Sat, 21 Mar 2020 00:08:34 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48kgwK6VZlz3Nq3; Sat, 21 Mar 2020 00:08:33 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8CA303E92; Sat, 21 Mar 2020 00:08:33 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02L08Xf5054010; Sat, 21 Mar 2020 00:08:33 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02L08XIw054009; Sat, 21 Mar 2020 00:08:33 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003210008.02L08XIw054009@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Sat, 21 Mar 2020 00:08:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359189 - head/contrib/elftoolchain/readelf X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/contrib/elftoolchain/readelf X-SVN-Commit-Revision: 359189 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 21 Mar 2020 00:08:34 -0000 Author: emaste Date: Sat Mar 21 00:08:33 2020 New Revision: 359189 URL: https://svnweb.freebsd.org/changeset/base/359189 Log: readelf: simplify Xen string note printing Reviewed by: markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D24140 Modified: head/contrib/elftoolchain/readelf/readelf.c Modified: head/contrib/elftoolchain/readelf/readelf.c ============================================================================== --- head/contrib/elftoolchain/readelf/readelf.c Sat Mar 21 00:01:06 2020 (r359188) +++ head/contrib/elftoolchain/readelf/readelf.c Sat Mar 21 00:08:33 2020 (r359189) @@ -3676,37 +3676,45 @@ static struct flag_desc note_feature_ctl_flags[] = { { 0, NULL } }; -static void +static bool dump_note_string(const char *description, const char *s, size_t len) { size_t i; - int printable = 1; if (len == 0 || s[--len] != '\0') { - printable = 0; + return (false); } else { - for (i = 0; i < len; i++) { - if (!isprint(s[i])) { - printable = 0; - break; - } - } - } - - if (printable) { - printf(" %s: %s\n", description, s); - } else { - printf(" description data:"); for (i = 0; i < len; i++) - printf(" %02x", (unsigned char)s[i]); - printf("\n"); + if (!isprint(s[i])) + return (false); } + + printf(" %s: %s\n", description, s); + return (true); } +struct note_desc { + uint32_t type; + const char *description; + bool (*fp)(const char *, const char *, size_t); +}; + +static struct note_desc xen_notes[] = { + { 5, "Xen version", dump_note_string }, + { 6, "Guest OS", dump_note_string }, + { 7, "Guest version", dump_note_string }, + { 8, "Loader", dump_note_string }, + { 9, "PAE mode", dump_note_string }, + { 10, "Features", dump_note_string }, + { 11, "BSD symtab", dump_note_string }, + { 0, NULL, NULL } +}; + static void dump_notes_data(struct readelf *re, const char *name, uint32_t type, const char *buf, size_t sz) { + struct note_desc *nd; size_t i; const uint32_t *ubuf; @@ -3750,28 +3758,13 @@ dump_notes_data(struct readelf *re, const char *name, return; } } else if (strcmp(name, "Xen") == 0) { - switch (type) { - case 5: - dump_note_string("Xen version", buf, sz); - return; - case 6: - dump_note_string("Guest OS", buf, sz); - return; - case 7: - dump_note_string("Guest version", buf, sz); - return; - case 8: - dump_note_string("Loader", buf, sz); - return; - case 9: - dump_note_string("PAE mode", buf, sz); - return; - case 10: - dump_note_string("Features", buf, sz); - return; - case 11: - dump_note_string("BSD symtab", buf, sz); - return; + for (nd = xen_notes; nd->description != NULL; nd++) { + if (nd->type == type) { + if (nd->fp(nd->description, buf, sz)) + return; + else + break; + } } } unknown: From owner-svn-src-head@freebsd.org Sat Mar 21 15:51:05 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id D10D22657A9; Sat, 21 Mar 2020 15:51:05 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48l4qs53Mrz4J14; Sat, 21 Mar 2020 15:51:05 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A2936F008; Sat, 21 Mar 2020 15:51:05 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02LFp5CH021327; Sat, 21 Mar 2020 15:51:05 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02LFp5f5021326; Sat, 21 Mar 2020 15:51:05 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202003211551.02LFp5f5021326@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Sat, 21 Mar 2020 15:51:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359194 - head/lib/libc/gen X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/lib/libc/gen X-SVN-Commit-Revision: 359194 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 21 Mar 2020 15:51:05 -0000 Author: emaste Date: Sat Mar 21 15:51:05 2020 New Revision: 359194 URL: https://svnweb.freebsd.org/changeset/base/359194 Log: nlist(3): add elf(5) xref Found while looking for a.out remnants; nlist should also xref the binary format we currently use. Modified: head/lib/libc/gen/nlist.3 Modified: head/lib/libc/gen/nlist.3 ============================================================================== --- head/lib/libc/gen/nlist.3 Sat Mar 21 00:34:28 2020 (r359193) +++ head/lib/libc/gen/nlist.3 Sat Mar 21 15:51:05 2020 (r359194) @@ -69,7 +69,8 @@ if the file .Fa filename does not exist or is not executable, the returned value is \-1. .Sh SEE ALSO -.Xr a.out 5 +.Xr a.out 5 , +.Xr elf 5 .Sh HISTORY A .Fn nlist From owner-svn-src-head@freebsd.org Sat Mar 21 16:12:20 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E48472661F0; Sat, 21 Mar 2020 16:12:20 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48l5JN5YnSz3F66; Sat, 21 Mar 2020 16:12:20 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 86636F53A; Sat, 21 Mar 2020 16:12:20 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02LGCKhQ036854; Sat, 21 Mar 2020 16:12:20 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02LGCJTt036848; Sat, 21 Mar 2020 16:12:19 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <202003211612.02LGCJTt036848@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Sat, 21 Mar 2020 16:12:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359195 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 359195 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 21 Mar 2020 16:12:21 -0000 Author: tuexen Date: Sat Mar 21 16:12:19 2020 New Revision: 359195 URL: https://svnweb.freebsd.org/changeset/base/359195 Log: More timer cleanups, no functional change. MFC after: 1 week Modified: head/sys/netinet/sctp_asconf.c head/sys/netinet/sctp_input.c head/sys/netinet/sctp_timer.c head/sys/netinet/sctp_timer.h head/sys/netinet/sctputil.c Modified: head/sys/netinet/sctp_asconf.c ============================================================================== --- head/sys/netinet/sctp_asconf.c Sat Mar 21 15:51:05 2020 (r359194) +++ head/sys/netinet/sctp_asconf.c Sat Mar 21 16:12:19 2020 (r359195) @@ -585,8 +585,7 @@ sctp_process_asconf_set_primary(struct sockaddr *src, sctp_move_chunks_from_net(stcb, stcb->asoc.deleted_primary); } - sctp_delete_prim_timer(stcb->sctp_ep, stcb, - stcb->asoc.deleted_primary); + sctp_delete_prim_timer(stcb->sctp_ep, stcb); } } else { /* couldn't set the requested primary address! */ Modified: head/sys/netinet/sctp_input.c ============================================================================== --- head/sys/netinet/sctp_input.c Sat Mar 21 15:51:05 2020 (r359194) +++ head/sys/netinet/sctp_input.c Sat Mar 21 16:12:19 2020 (r359195) @@ -703,8 +703,7 @@ sctp_handle_heartbeat_ack(struct sctp_heartbeat_chunk sctp_move_chunks_from_net(stcb, stcb->asoc.deleted_primary); } - sctp_delete_prim_timer(stcb->sctp_ep, stcb, - stcb->asoc.deleted_primary); + sctp_delete_prim_timer(stcb->sctp_ep, stcb); } } } Modified: head/sys/netinet/sctp_timer.c ============================================================================== --- head/sys/netinet/sctp_timer.c Sat Mar 21 15:51:05 2020 (r359194) +++ head/sys/netinet/sctp_timer.c Sat Mar 21 16:12:19 2020 (r359195) @@ -1264,8 +1264,7 @@ sctp_asconf_timer(struct sctp_inpcb *inp, struct sctp_ /* Mobility adaptation */ void -sctp_delete_prim_timer(struct sctp_inpcb *inp, struct sctp_tcb *stcb, - struct sctp_nets *net SCTP_UNUSED) +sctp_delete_prim_timer(struct sctp_inpcb *inp, struct sctp_tcb *stcb) { if (stcb->asoc.deleted_primary == NULL) { SCTPDBG(SCTP_DEBUG_ASCONF1, "delete_prim_timer: deleted_primary is not stored...\n"); @@ -1521,9 +1520,7 @@ sctp_pathmtu_timer(struct sctp_inpcb *inp, } void -sctp_autoclose_timer(struct sctp_inpcb *inp, - struct sctp_tcb *stcb, - struct sctp_nets *net) +sctp_autoclose_timer(struct sctp_inpcb *inp, struct sctp_tcb *stcb) { struct timeval tn, *tim_touse; struct sctp_association *asoc; @@ -1562,7 +1559,7 @@ sctp_autoclose_timer(struct sctp_inpcb *inp, */ if (SCTP_GET_STATE(stcb) != SCTP_STATE_SHUTDOWN_SENT) { /* only send SHUTDOWN 1st time thru */ - struct sctp_nets *netp; + struct sctp_nets *net; if ((SCTP_GET_STATE(stcb) == SCTP_STATE_OPEN) || (SCTP_GET_STATE(stcb) == SCTP_STATE_SHUTDOWN_RECEIVED)) { @@ -1571,17 +1568,15 @@ sctp_autoclose_timer(struct sctp_inpcb *inp, SCTP_SET_STATE(stcb, SCTP_STATE_SHUTDOWN_SENT); sctp_stop_timers_for_shutdown(stcb); if (stcb->asoc.alternate) { - netp = stcb->asoc.alternate; + net = stcb->asoc.alternate; } else { - netp = stcb->asoc.primary_destination; + net = stcb->asoc.primary_destination; } - sctp_send_shutdown(stcb, netp); + sctp_send_shutdown(stcb, net); sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWN, - stcb->sctp_ep, stcb, - netp); + stcb->sctp_ep, stcb, net); sctp_timer_start(SCTP_TIMER_TYPE_SHUTDOWNGUARD, - stcb->sctp_ep, stcb, - netp); + stcb->sctp_ep, stcb, NULL); } } } else { @@ -1594,8 +1589,7 @@ sctp_autoclose_timer(struct sctp_inpcb *inp, /* fool the timer startup to use the time left */ tmp = asoc->sctp_autoclose_ticks; asoc->sctp_autoclose_ticks -= ticks_gone_by; - sctp_timer_start(SCTP_TIMER_TYPE_AUTOCLOSE, inp, stcb, - net); + sctp_timer_start(SCTP_TIMER_TYPE_AUTOCLOSE, inp, stcb, NULL); /* restore the real tick value */ asoc->sctp_autoclose_ticks = tmp; } Modified: head/sys/netinet/sctp_timer.h ============================================================================== --- head/sys/netinet/sctp_timer.h Sat Mar 21 15:51:05 2020 (r359194) +++ head/sys/netinet/sctp_timer.h Sat Mar 21 16:12:19 2020 (r359195) @@ -43,9 +43,7 @@ __FBSDID("$FreeBSD$"); #define SCTP_RTT_SHIFT 3 #define SCTP_RTT_VAR_SHIFT 2 -struct sctp_nets * -sctp_find_alternate_net(struct sctp_tcb *, - struct sctp_nets *, int mode); +struct sctp_nets *sctp_find_alternate_net(struct sctp_tcb *, struct sctp_nets *, int); int sctp_t3rxt_timer(struct sctp_inpcb *, struct sctp_tcb *, @@ -82,12 +80,10 @@ sctp_asconf_timer(struct sctp_inpcb *, struct sctp_tcb struct sctp_nets *); void -sctp_delete_prim_timer(struct sctp_inpcb *, struct sctp_tcb *, - struct sctp_nets *); + sctp_delete_prim_timer(struct sctp_inpcb *, struct sctp_tcb *); void -sctp_autoclose_timer(struct sctp_inpcb *, struct sctp_tcb *, - struct sctp_nets *net); + sctp_autoclose_timer(struct sctp_inpcb *, struct sctp_tcb *); void sctp_audit_retranmission_queue(struct sctp_association *); Modified: head/sys/netinet/sctputil.c ============================================================================== --- head/sys/netinet/sctputil.c Sat Mar 21 15:51:05 2020 (r359194) +++ head/sys/netinet/sctputil.c Sat Mar 21 16:12:19 2020 (r359195) @@ -1931,7 +1931,7 @@ sctp_timeout_handler(void *t) break; } SCTP_STAT_INCR(sctps_timoautoclose); - sctp_autoclose_timer(inp, stcb, net); + sctp_autoclose_timer(inp, stcb); sctp_chunk_output(inp, stcb, SCTP_OUTPUT_FROM_AUTOCLOSE_TMR, SCTP_SO_NOT_LOCKED); did_output = 0; break; @@ -1997,7 +1997,7 @@ sctp_timeout_handler(void *t) if ((stcb == NULL) || (inp == NULL)) { break; } - sctp_delete_prim_timer(inp, stcb, net); + sctp_delete_prim_timer(inp, stcb); SCTP_STAT_INCR(sctps_timodelprim); break; default: