If your site has very few visitors, then there may be no negative effect on SEO. If however your site is the like one of the most popular sites in the world with hundreds of visitors a minute accessing the site via the root domain (for example, by typing it in), then it may affect SEO because all accesses to the root still produce a page to the client regardless of the status code and this production uses up connections on the server and the server doesn't free them until a state called TIME-WAIT ends which is about 60 seconds after the connection with the client ends.
If the server is setup to handle a limited number of connections then the server will be slow for the rest of the users while its processing the pages for the first set of users. Run a stress test on your server and you'll know what I mean. A utility called apache bench works very well for this purpose.
Here's an example in numbers.
If your server can handle only 10 connections at once, and 500 people wanted to access the site all at once, then the first ten get the pages right away and the next person will have to wait until one page is served to one of the first ten people etc.
With the necessary redirect, the problem is doubled because instead of trying to process one page for a client, you're processing two. The redirect page, AND the actual web page.
To see the numbers more clearly, run your site with webpagetest.org. You will see higher loading times if you test with the root domain in comparison to the final redirected domain. That site also states the "time to first byte" on a site includes the time a redirect is processed. You want your "time to first byte" as low as possible. Anything under 200 milliseconds is good. Anything above and it could be trouble. Also, any page that loads over 1.5 seconds can cause guest loss.